作成日: 2019/01/25 最終更新日: 2019/01/25
文書種別
使用方法
詳細
SPREADには値を変更したセル位置を保持する機能はありませんが、データモデルの変更を検知してセル位置を保存しておくことで、再利用することが可能です。
◎サンプルコード(VB)
◎サンプルコード(C#)
◎サンプルコード(VB)
Private WithEvents dm As FarPoint.Win.Spread.Model.DefaultSheetDataModel
Private changed As Point()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' デーモデルの設定
dm = FpSpread1.ActiveSheet.Models.Data
' 変更セル位置を保存する配列変数の作成
changed = New Point() {}
End Sub
Private Sub dm_Changed(sender As Object, e As SheetDataModelEventArgs) Handles dm.Changed
' 変更されたセル位置の保存
Array.Resize(changed, changed.Length + 1)
changed(changed.Length - 1) = New Point(e.Row, e.Column)
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
' 変更されたセル位置の確認
For i As Integer = 0 To changed.Length - 1
Console.WriteLine("{0}", changed(i))
Next
End Sub
Private changed As Point()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' デーモデルの設定
dm = FpSpread1.ActiveSheet.Models.Data
' 変更セル位置を保存する配列変数の作成
changed = New Point() {}
End Sub
Private Sub dm_Changed(sender As Object, e As SheetDataModelEventArgs) Handles dm.Changed
' 変更されたセル位置の保存
Array.Resize(changed, changed.Length + 1)
changed(changed.Length - 1) = New Point(e.Row, e.Column)
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
' 変更されたセル位置の確認
For i As Integer = 0 To changed.Length - 1
Console.WriteLine("{0}", changed(i))
Next
End Sub
◎サンプルコード(C#)
private FarPoint.Win.Spread.Model.DefaultSheetDataModel dm;
private Point[] changed;
private void Form1_Load(object sender, EventArgs e)
{
// データモデルの設定
dm = (FarPoint.Win.Spread.Model.DefaultSheetDataModel)fpSpread1.ActiveSheet.Models.Data;
dm.Changed += new FarPoint.Win.Spread.Model.SheetDataModelEventHandler(this.dm_Changed);
// 変更セル位置を保存する配列変数の作成
changed = new Point[] { };
}
private void button1_Click(object sender, EventArgs e)
{
// 変更されたセル位置の確認
for (int i= 0;i< changed.Length; i++)
{
Console.WriteLine("{0}", changed[i]);
}
}
private void dm_Changed(object sender, FarPoint.Win.Spread.Model.SheetDataModelEventArgs e)
{
// 変更されたセル位置の保存
Array.Resize(ref changed, changed.Length + 1);
changed[changed.Length - 1] = new Point(e.Row, e.Column);
}
private Point[] changed;
private void Form1_Load(object sender, EventArgs e)
{
// データモデルの設定
dm = (FarPoint.Win.Spread.Model.DefaultSheetDataModel)fpSpread1.ActiveSheet.Models.Data;
dm.Changed += new FarPoint.Win.Spread.Model.SheetDataModelEventHandler(this.dm_Changed);
// 変更セル位置を保存する配列変数の作成
changed = new Point[] { };
}
private void button1_Click(object sender, EventArgs e)
{
// 変更されたセル位置の確認
for (int i= 0;i< changed.Length; i++)
{
Console.WriteLine("{0}", changed[i]);
}
}
private void dm_Changed(object sender, FarPoint.Win.Spread.Model.SheetDataModelEventArgs e)
{
// 変更されたセル位置の保存
Array.Resize(ref changed, changed.Length + 1);
changed[changed.Length - 1] = new Point(e.Row, e.Column);
}
旧文書番号
83572