PowerTools SPREAD for Windows Forms 8.0J
MergePolicy 列挙体


セル内の値に基づいてコントロールがセルを自動的にマージする方法を表します。
構文
'Declaration
 
Public Enum MergePolicy 
   Inherits System.Enum
'使用法
 
Dim instance As MergePolicy
public enum MergePolicy : System.Enum 
メンバ
メンバ説明
Always値が同一の隣接セルと常にマージする
Noneセルを自動的にマージしない
Restricted別の行または列の対応するセルが同様にマージされている場合、 値が同一の隣接セルと自動的にマージする
解説

隣接する同一のセルを自動的にマージするには、MergePolicyをAlwaysまたはRestrictedに設定します。

セルの自動マージの詳細については、「セルの自動マージ」を参照してください。

特定のセル型を使用する場合は、そのセル型の制限事項に注意してください。たとえば、CheckBoxセルを自動的にマージするためには、Valueに1または0ではなくTrueまたはFalseを設定する必要があります。

次のサンプルコードは、一連のセルに値を入力してから、内容が同一の隣接セルをマージします。
fpSpread1.ActiveSheet.RowCount = 12;
fpSpread1.ActiveSheet.ColumnCount = 5;
fpSpread1.ActiveSheet.Columns[1].Width = 150;
fpSpread1.ActiveSheet.SetClip(0, 0, 1, 5, "VS Live\tSan Francisco\tScott\tScott\t12:00");
fpSpread1.ActiveSheet.SetClip(1, 0, 1, 5, "VS Live\tSan Francisco\tScott\tChris\t12:00");
fpSpread1.ActiveSheet.SetClip(2, 0, 1, 5, "VS Live\tSan Francisco\tScott\tChris\t1:00");
fpSpread1.ActiveSheet.SetClip(3, 0, 1, 5, "MSCE\tSan Francisco\tScott\tScott\t12:00");
fpSpread1.ActiveSheet.SetClip(4, 0, 1, 5, "VS Live\tOrlando\tChris\tChris\t1:00");
fpSpread1.ActiveSheet.SetClip(5, 0, 1, 5, "VS Live\tOrlando\tScott\tChris\t2:00");
fpSpread1.ActiveSheet.SetClip(6, 0, 1, 5, "VS Live\tNew York\tGreg\tGreg\t2:00");
fpSpread1.ActiveSheet.SetClip(7, 0, 1, 5, "VS Live\tNew York\tGreg\tJim\t2:00");
fpSpread1.ActiveSheet.SetClip(8, 0, 1, 5, "VS Live\tNew York\tGreg\tJim\t3:00");
fpSpread1.ActiveSheet.SetClip(9, 0, 1, 5, "VS Live\tNew York\tScott\tJim\t4:00");
fpSpread1.ActiveSheet.SetClip(10, 0, 1, 5, "PRN\tRaleigh\tScott\tScott\t7:00");
fpSpread1.ActiveSheet.SetClip(11, 0, 1, 5, "PRN\tCary\tJenny\tRyan\t6:00");
DialogResult dlg; 
dlg = MessageBox.Show("Do you want to merge the data?", "GetColumnMerge", MessageBoxButtons.YesNo);
if (dlg == DialogResult.Yes)
{
fpSpread1.ActiveSheet.SetRowMerge(-1, FarPoint.Win.Spread.Model.MergePolicy.Always);
fpSpread1.ActiveSheet.SetColumnMerge(-1, FarPoint.Win.Spread.Model.MergePolicy.Always);
fpSpread1.SetBounds(fpSpread1.Bounds.X, fpSpread1.Bounds.Y, fpSpread1.Bounds.Width + 1, fpSpread1.Bounds.Height);
label1.Text = fpSpread1.ActiveSheet.GetColumnMerge(-1).ToString();
}
With FpSpread1.ActiveSheet
.RowCount = 12
.ColumnCount = 5
.Columns(1).Width = 150
.SetClip(0, 0, 1, 5, "VS Live" & vbTab & "San Francisco" & vbTab & "Scott" & vbTab & "Scott" & vbTab & "12:00")
.SetClip(1, 0, 1, 5, "VS Live" & vbTab & "San Francisco" & vbTab & "Scott" & vbTab & "Chris" & vbTab & "12:00")
.SetClip(2, 0, 1, 5, "VS Live" & vbTab & "San Francisco" & vbTab & "Scott" & vbTab & "Chris" & vbTab & "1:00")
.SetClip(3, 0, 1, 5, "MSCE" & vbTab & "San Francisco" & vbTab & "Scott" & vbTab & "Scott" & vbTab & "12:00")
.SetClip(4, 0, 1, 5, "VS Live" & vbTab & "Orlando" & vbTab & "Chris" & vbTab & "Chris" & vbTab & "1:00")
.SetClip(5, 0, 1, 5, "VS Live" & vbTab & "Orlando" & vbTab & "Scott" & vbTab & "Chris" & vbTab & "2:00")
.SetClip(6, 0, 1, 5, "VS Live" & vbTab & "New York" & vbTab & "Greg" & vbTab & "Greg" & vbTab & "2:00")
.SetClip(7, 0, 1, 5, "VS Live" & vbTab & "New York" & vbTab & "Greg" & vbTab & "Jim" & vbTab & "2:00")
.SetClip(8, 0, 1, 5, "VS Live" & vbTab & "New York" & vbTab & "Greg" & vbTab & "Jim" & vbTab & "3:00")
.SetClip(9, 0, 1, 5, "VS Live" & vbTab & "New York" & vbTab & "Scott" & vbTab & "Jim" & vbTab & "4:00")
.SetClip(10, 0, 1, 5, "PRN" & vbTab & "Raleigh" & vbTab & "Scott" & vbTab & "Scott" & vbTab & "7:00")
.SetClip(11, 0, 1, 5, "PRN" & vbTab & "Cary" & vbTab & "Jenny" & vbTab & "Ryan" & vbTab & "6:00")
End With
Dim dlg As DialogResult
dlg = MessageBox.Show("Do you want to merge the data?", "GetColumnMerge", MessageBoxButtons.YesNo)
If dlg = DialogResult.Yes Then
FpSpread1.ActiveSheet.SetRowMerge(-1, FarPoint.Win.Spread.Model.MergePolicy.Always)
FpSpread1.ActiveSheet.SetColumnMerge(-1, FarPoint.Win.Spread.Model.MergePolicy.Always)
FpSpread1.SetBounds(FpSpread1.Bounds.X, FpSpread1.Bounds.Y, FpSpread1.Bounds.Width + 1, FpSpread1.Bounds.Height)
Label1.Text = FpSpread1.ActiveSheet.GetColumnMerge(-1).ToString()
End If
継承階層

System.Object
   System.ValueType
      System.Enum
         FarPoint.Win.Spread.Model.MergePolicy

参照

FarPoint.Win.Spread.Model 名前空間
MergePolicy プロパティ (Column クラス)
MergePolicy プロパティ (Row クラス)

開発者ガイド

セルの自動マージ

 

 


© 2004-2015, GrapeCity inc. All rights reserved.