作成日: 2018/11/30 最終更新日: 2018/11/30
文書種別
使用方法
詳細
製品では数式が設定されたセルに対して値の設定や削除を行うことで、数式がクリアされます。
変更前の数式を保持する場合、変更前の数式の保存と変更後の再設定処理が必要になります。
◎サンプルコード(VB)
◎サンプルコード(C#)
変更前の数式を保持する場合、変更前の数式の保存と変更後の再設定処理が必要になります。
◎サンプルコード(VB)
Private formulaString As String
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' SPREADの設定
FpSpread1.ActiveSheet.RowCount = 4
FpSpread1.ActiveSheet.ColumnCount = 4
' 値の設定
FpSpread1.ActiveSheet.Cells(0, 1).Value = 10
FpSpread1.ActiveSheet.Cells(0, 2).Value = 11
FpSpread1.ActiveSheet.Cells(0, 3).Value = 12
FpSpread1.ActiveSheet.Cells(1, 1).Value = 20
FpSpread1.ActiveSheet.Cells(1, 2).Value = 21
FpSpread1.ActiveSheet.Cells(1, 3).Value = 22
FpSpread1.ActiveSheet.Cells(2, 1).Value = 30
FpSpread1.ActiveSheet.Cells(2, 2).Value = 31
FpSpread1.ActiveSheet.Cells(2, 3).Value = 32
FpSpread1.ActiveSheet.Cells(3, 1).Value = 40
FpSpread1.ActiveSheet.Cells(3, 2).Value = 41
FpSpread1.ActiveSheet.Cells(3, 3).Value = 42
' 数式の設定
FpSpread1.ActiveSheet.SetFormula(0, 0, "SUM(B1:D1)")
FpSpread1.ActiveSheet.SetFormula(1, 0, "SUM(B2:D2)")
FpSpread1.ActiveSheet.SetFormula(2, 0, "SUM(B3:D3)")
FpSpread1.ActiveSheet.SetFormula(3, 0, "SUM(B4:D4)")
End Sub
Private Sub FpSpread1_EditModeOn(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOn
If FpSpread1.ActiveSheet.ActiveColumnIndex = 0 Then
' 編集前の数式の保存
formulaString = FpSpread1.ActiveSheet.GetFormula(FpSpread1.ActiveSheet.ActiveRowIndex, FpSpread1.ActiveSheet.ActiveColumnIndex)
End If
End Sub
Private Sub FpSpread1_Change(sender As Object, e As ChangeEventArgs) Handles FpSpread1.Change
If FpSpread1.ActiveSheet.ActiveColumnIndex = 0 Then
' 数式の再設定
FpSpread1.ActiveSheet.SetFormula(FpSpread1.ActiveSheet.ActiveRowIndex, FpSpread1.ActiveSheet.ActiveColumnIndex, formulaString)
End If
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' SPREADの設定
FpSpread1.ActiveSheet.RowCount = 4
FpSpread1.ActiveSheet.ColumnCount = 4
' 値の設定
FpSpread1.ActiveSheet.Cells(0, 1).Value = 10
FpSpread1.ActiveSheet.Cells(0, 2).Value = 11
FpSpread1.ActiveSheet.Cells(0, 3).Value = 12
FpSpread1.ActiveSheet.Cells(1, 1).Value = 20
FpSpread1.ActiveSheet.Cells(1, 2).Value = 21
FpSpread1.ActiveSheet.Cells(1, 3).Value = 22
FpSpread1.ActiveSheet.Cells(2, 1).Value = 30
FpSpread1.ActiveSheet.Cells(2, 2).Value = 31
FpSpread1.ActiveSheet.Cells(2, 3).Value = 32
FpSpread1.ActiveSheet.Cells(3, 1).Value = 40
FpSpread1.ActiveSheet.Cells(3, 2).Value = 41
FpSpread1.ActiveSheet.Cells(3, 3).Value = 42
' 数式の設定
FpSpread1.ActiveSheet.SetFormula(0, 0, "SUM(B1:D1)")
FpSpread1.ActiveSheet.SetFormula(1, 0, "SUM(B2:D2)")
FpSpread1.ActiveSheet.SetFormula(2, 0, "SUM(B3:D3)")
FpSpread1.ActiveSheet.SetFormula(3, 0, "SUM(B4:D4)")
End Sub
Private Sub FpSpread1_EditModeOn(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOn
If FpSpread1.ActiveSheet.ActiveColumnIndex = 0 Then
' 編集前の数式の保存
formulaString = FpSpread1.ActiveSheet.GetFormula(FpSpread1.ActiveSheet.ActiveRowIndex, FpSpread1.ActiveSheet.ActiveColumnIndex)
End If
End Sub
Private Sub FpSpread1_Change(sender As Object, e As ChangeEventArgs) Handles FpSpread1.Change
If FpSpread1.ActiveSheet.ActiveColumnIndex = 0 Then
' 数式の再設定
FpSpread1.ActiveSheet.SetFormula(FpSpread1.ActiveSheet.ActiveRowIndex, FpSpread1.ActiveSheet.ActiveColumnIndex, formulaString)
End If
End Sub
◎サンプルコード(C#)
private string formulaString;
private void Form1_Load(object sender, EventArgs e)
{
// SPREADの設定
fpSpread1.ActiveSheet.ColumnCount = 4;
fpSpread1.ActiveSheet.RowCount = 4;
// 値の設定
fpSpread1.ActiveSheet.Cells[0, 1].Value = 10;
fpSpread1.ActiveSheet.Cells[0, 2].Value = 11;
fpSpread1.ActiveSheet.Cells[0, 3].Value = 12;
fpSpread1.ActiveSheet.Cells[1, 1].Value = 20;
fpSpread1.ActiveSheet.Cells[1, 2].Value = 21;
fpSpread1.ActiveSheet.Cells[1, 3].Value = 22;
fpSpread1.ActiveSheet.Cells[2, 1].Value = 30;
fpSpread1.ActiveSheet.Cells[2, 2].Value = 31;
fpSpread1.ActiveSheet.Cells[2, 3].Value = 32;
fpSpread1.ActiveSheet.Cells[3, 1].Value = 40;
fpSpread1.ActiveSheet.Cells[3, 2].Value = 41;
fpSpread1.ActiveSheet.Cells[3, 3].Value = 42;
// 数式の設定
fpSpread1.ActiveSheet.SetFormula(0, 0, "SUM(B1:D1)");
fpSpread1.ActiveSheet.SetFormula(1, 0, "SUM(B2:D2)");
fpSpread1.ActiveSheet.SetFormula(2, 0, "SUM(B3:D3)");
fpSpread1.ActiveSheet.SetFormula(3, 0, "SUM(B4:D4)");
}
private void fpSpread1_EditModeOn(object sender, EventArgs e)
{
if (fpSpread1.ActiveSheet.ActiveColumnIndex == 0)
{
// 編集前の数式の保存
formulaString = fpSpread1.ActiveSheet.GetFormula(fpSpread1.ActiveSheet.ActiveRowIndex, fpSpread1.ActiveSheet.ActiveColumnIndex);
}
}
private void fpSpread1_Change(object sender, FarPoint.Win.Spread.ChangeEventArgs e)
{
if (fpSpread1.ActiveSheet.ActiveColumnIndex == 0)
{
// 数式の再設定
fpSpread1.ActiveSheet.SetFormula(fpSpread1.ActiveSheet.ActiveRowIndex, fpSpread1.ActiveSheet.ActiveColumnIndex, formulaString);
}
}
private void Form1_Load(object sender, EventArgs e)
{
// SPREADの設定
fpSpread1.ActiveSheet.ColumnCount = 4;
fpSpread1.ActiveSheet.RowCount = 4;
// 値の設定
fpSpread1.ActiveSheet.Cells[0, 1].Value = 10;
fpSpread1.ActiveSheet.Cells[0, 2].Value = 11;
fpSpread1.ActiveSheet.Cells[0, 3].Value = 12;
fpSpread1.ActiveSheet.Cells[1, 1].Value = 20;
fpSpread1.ActiveSheet.Cells[1, 2].Value = 21;
fpSpread1.ActiveSheet.Cells[1, 3].Value = 22;
fpSpread1.ActiveSheet.Cells[2, 1].Value = 30;
fpSpread1.ActiveSheet.Cells[2, 2].Value = 31;
fpSpread1.ActiveSheet.Cells[2, 3].Value = 32;
fpSpread1.ActiveSheet.Cells[3, 1].Value = 40;
fpSpread1.ActiveSheet.Cells[3, 2].Value = 41;
fpSpread1.ActiveSheet.Cells[3, 3].Value = 42;
// 数式の設定
fpSpread1.ActiveSheet.SetFormula(0, 0, "SUM(B1:D1)");
fpSpread1.ActiveSheet.SetFormula(1, 0, "SUM(B2:D2)");
fpSpread1.ActiveSheet.SetFormula(2, 0, "SUM(B3:D3)");
fpSpread1.ActiveSheet.SetFormula(3, 0, "SUM(B4:D4)");
}
private void fpSpread1_EditModeOn(object sender, EventArgs e)
{
if (fpSpread1.ActiveSheet.ActiveColumnIndex == 0)
{
// 編集前の数式の保存
formulaString = fpSpread1.ActiveSheet.GetFormula(fpSpread1.ActiveSheet.ActiveRowIndex, fpSpread1.ActiveSheet.ActiveColumnIndex);
}
}
private void fpSpread1_Change(object sender, FarPoint.Win.Spread.ChangeEventArgs e)
{
if (fpSpread1.ActiveSheet.ActiveColumnIndex == 0)
{
// 数式の再設定
fpSpread1.ActiveSheet.SetFormula(fpSpread1.ActiveSheet.ActiveRowIndex, fpSpread1.ActiveSheet.ActiveColumnIndex, formulaString);
}
}
旧文書番号
83437