シート上の行情報(行高、スタイル、データなど)を任意の行にコピーする方法
対象製品
SPREAD for .NET Windows Forms Edition
詳細
SPREADコントロールからは以下のオブジェクトモデルが提供されています。(製品ヘルプからの抜粋)
例えば1行目の全ての情報を任意の行にコピーしたい(※)場合は、上記クラスメンバであるCopyメソッド呼び出しを行うことで容易に実現することが出来ます。各モデル、クラス、およびクラスメンバの詳細については製品ヘルプをご参照ください。(※デザイナ上での行コピーを行うことは出来ません)
以下のサンプルコードでは行(0)から行(5)へのコピー処理を実現しています。この実装により、例えば各クラスのCopyメソッドを適宜コメントアウトすることで、各属性がどのモデルによって管理されているかを確認することも出来ます。
◎サンプルコード(VB)
◎サンプルコード(C#)
◎Axisモデル(DefaultSheetAxisModelクラス)
列と行に関する各機能を提供(行高、列幅など)
◎Dataモデル(DefaultSheetDataModelクラス)
コントロールに関するデータを提供
◎Selectionモデル(DefaultSheetSelectionModelクラス)
選択に関する動作や対話機能を提供
◎Spanモデル(DefaultSheetSpanModelクラス)
セル結合に関する機能を提供します
◎Styleモデル(DefaultSheetStyleModelクラス)
セルスタイルを提供します(背景色、罫線など)
◎製品ヘルプ
SPREAD for .NETの使い方
+製品について
+概念の概要
+オブジェクトモデルについて
列と行に関する各機能を提供(行高、列幅など)
◎Dataモデル(DefaultSheetDataModelクラス)
コントロールに関するデータを提供
◎Selectionモデル(DefaultSheetSelectionModelクラス)
選択に関する動作や対話機能を提供
◎Spanモデル(DefaultSheetSpanModelクラス)
セル結合に関する機能を提供します
◎Styleモデル(DefaultSheetStyleModelクラス)
セルスタイルを提供します(背景色、罫線など)
◎製品ヘルプ
SPREAD for .NETの使い方
+製品について
+概念の概要
+オブジェクトモデルについて
例えば1行目の全ての情報を任意の行にコピーしたい(※)場合は、上記クラスメンバであるCopyメソッド呼び出しを行うことで容易に実現することが出来ます。各モデル、クラス、およびクラスメンバの詳細については製品ヘルプをご参照ください。(※デザイナ上での行コピーを行うことは出来ません)
以下のサンプルコードでは行(0)から行(5)へのコピー処理を実現しています。この実装により、例えば各クラスのCopyメソッドを適宜コメントアウトすることで、各属性がどのモデルによって管理されているかを確認することも出来ます。
◎サンプルコード(VB)
Imports FarPoint.Win
Imports FarPoint.Win.Spread
Imports FarPoint.Win.Spread.Model
Imports FarPoint.Win.Spread.CellType
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'--------------------------------
'(1)行高,列幅
'--------------------------------
FpSpread1.ActiveSheet.Rows(0).Height = 40
FpSpread1.ActiveSheet.Columns(1).Width = 150
'--------------------------------
'(2)背景色,罫線,配置
'--------------------------------
FpSpread1.ActiveSheet.Cells(0, 0).BackColor = Color.Red
FpSpread1.ActiveSheet.Cells(0, 2).Border = New BevelBorder(BevelBorderType.Raised, Color.Red, Color.Blue)
FpSpread1.ActiveSheet.Cells(0, 3).BackColor = Color.Yellow
FpSpread1.ActiveSheet.Rows(0).VerticalAlignment = CellVerticalAlignment.Center
'--------------------------------
'(3)型,データ
'--------------------------------
Dim cb As New ComboBoxCellType
cb.Items = New String() {"aa", "bb"}
FpSpread1.ActiveSheet.Cells(0, 1).CellType = cb
FpSpread1.ActiveSheet.Cells(0, 0).Text = "赤"
FpSpread1.ActiveSheet.Cells(0, 1).Text = "aa"
FpSpread1.ActiveSheet.Cells(0, 2).Text = "罫線設定"
FpSpread1.ActiveSheet.Cells(0, 3).Text = "結合セル"
'--------------------------------
'(4)結合
'--------------------------------
FpSpread1.ActiveSheet.AddSpanCell(0, 3, 1, 2)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'===============================
'(1)Axisモデルによるコピー
'===============================
Dim AxisModel As New DefaultSheetAxisModel AxisModel = CType(FpSpread1.ActiveSheet.Models.RowAxis, DefaultSheetAxisModel)
AxisModel.Copy(0, 5, 1)
'===============================
'(2)Styleモデルによるコピー
'===============================
Dim StyleModel As New DefaultSheetStyleModel StyleModel = CType(FpSpread1.ActiveSheet.Models.Style, DefaultSheetStyleModel)
StyleModel.Copy(0, -1, 5, -1, 1, -1)
'===============================
'(3)Dataモデルによるコピー
'===============================
Dim DataModel As New DefaultSheetDataModel DataModel = CType(FpSpread1.ActiveSheet.Models.Data, DefaultSheetDataModel)
DataModel.Copy(0, -1, 5, -1, 1, -1)
'===============================
'(4)Spanモデルによるコピー
'===============================
Dim SpanModel As New DefaultSheetSpanModel SpanModel = CType(FpSpread1.ActiveSheet.Models.Span, DefaultSheetSpanModel)
SpanModel.Copy(0, -1, 5, -1, 1, -1)
End Sub
Imports FarPoint.Win.Spread
Imports FarPoint.Win.Spread.Model
Imports FarPoint.Win.Spread.CellType
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'--------------------------------
'(1)行高,列幅
'--------------------------------
FpSpread1.ActiveSheet.Rows(0).Height = 40
FpSpread1.ActiveSheet.Columns(1).Width = 150
'--------------------------------
'(2)背景色,罫線,配置
'--------------------------------
FpSpread1.ActiveSheet.Cells(0, 0).BackColor = Color.Red
FpSpread1.ActiveSheet.Cells(0, 2).Border = New BevelBorder(BevelBorderType.Raised, Color.Red, Color.Blue)
FpSpread1.ActiveSheet.Cells(0, 3).BackColor = Color.Yellow
FpSpread1.ActiveSheet.Rows(0).VerticalAlignment = CellVerticalAlignment.Center
'--------------------------------
'(3)型,データ
'--------------------------------
Dim cb As New ComboBoxCellType
cb.Items = New String() {"aa", "bb"}
FpSpread1.ActiveSheet.Cells(0, 1).CellType = cb
FpSpread1.ActiveSheet.Cells(0, 0).Text = "赤"
FpSpread1.ActiveSheet.Cells(0, 1).Text = "aa"
FpSpread1.ActiveSheet.Cells(0, 2).Text = "罫線設定"
FpSpread1.ActiveSheet.Cells(0, 3).Text = "結合セル"
'--------------------------------
'(4)結合
'--------------------------------
FpSpread1.ActiveSheet.AddSpanCell(0, 3, 1, 2)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'===============================
'(1)Axisモデルによるコピー
'===============================
Dim AxisModel As New DefaultSheetAxisModel AxisModel = CType(FpSpread1.ActiveSheet.Models.RowAxis, DefaultSheetAxisModel)
AxisModel.Copy(0, 5, 1)
'===============================
'(2)Styleモデルによるコピー
'===============================
Dim StyleModel As New DefaultSheetStyleModel StyleModel = CType(FpSpread1.ActiveSheet.Models.Style, DefaultSheetStyleModel)
StyleModel.Copy(0, -1, 5, -1, 1, -1)
'===============================
'(3)Dataモデルによるコピー
'===============================
Dim DataModel As New DefaultSheetDataModel DataModel = CType(FpSpread1.ActiveSheet.Models.Data, DefaultSheetDataModel)
DataModel.Copy(0, -1, 5, -1, 1, -1)
'===============================
'(4)Spanモデルによるコピー
'===============================
Dim SpanModel As New DefaultSheetSpanModel SpanModel = CType(FpSpread1.ActiveSheet.Models.Span, DefaultSheetSpanModel)
SpanModel.Copy(0, -1, 5, -1, 1, -1)
End Sub
◎サンプルコード(C#)
using FarPoint.Win;
using FarPoint.Win.Spread;
using FarPoint.Win.Spread.Model;
using FarPoint.Win.Spread.CellType;
private void Form1_Load(object sender, System.EventArgs e)
{
//--------------------------------
//(1)行高,列幅
//--------------------------------
fpSpread1.ActiveSheet.Rows[0].Height = 40;
fpSpread1.ActiveSheet.Columns[1].Width = 150;
//--------------------------------
//(2)背景色,罫線,配置
//--------------------------------
fpSpread1.ActiveSheet.Cells[0, 0].BackColor = Color.Red;
fpSpread1.ActiveSheet.Cells[0, 2].Border = new BevelBorder(BevelBorderType.Raised, Color.Red, Color.Blue);
fpSpread1.ActiveSheet.Cells[0, 3].BackColor = Color.Yellow;
fpSpread1.ActiveSheet.Rows[0].VerticalAlignment = CellVerticalAlignment.Center;
//--------------------------------
//(3)型,データ
//--------------------------------
ComboBoxCellType cb = new ComboBoxCellType();
cb.Items = new string[] {"aa", "bb"};
fpSpread1.ActiveSheet.Cells[0, 1].CellType = cb;
fpSpread1.ActiveSheet.Cells[0, 0].Text = "赤";
fpSpread1.ActiveSheet.Cells[0, 1].Text = "aa";
fpSpread1.ActiveSheet.Cells[0, 2].Text = "罫線設定";
fpSpread1.ActiveSheet.Cells[0, 3].Text = "結合セル";
//--------------------------------
//(4)結合
//--------------------------------
fpSpread1.ActiveSheet.AddSpanCell(0, 3, 1, 2);
}
private void button1_Click(object sender, System.EventArgs e)
{
//===============================
//(1)Axisモデルによるコピー
//===============================
DefaultSheetAxisModel AxisModel = new DefaultSheetAxisModel();
AxisModel = (DefaultSheetAxisModel)fpSpread1.ActiveSheet.Models.RowAxis;
AxisModel.Copy(0, 5, 1);
//===============================
//(2)Styleモデルによるコピー
//===============================
DefaultSheetStyleModel StyleModel = new DefaultSheetStyleModel();
StyleModel = (DefaultSheetStyleModel)fpSpread1.ActiveSheet.Models.Style;
StyleModel.Copy(0, -1, 5, -1, 1, -1);
//===============================
//(3)Dataモデルによるコピー
//===============================
DefaultSheetDataModel DataModel = new DefaultSheetDataModel();
DataModel = (DefaultSheetDataModel)fpSpread1.ActiveSheet.Models.Data;
DataModel.Copy(0, -1, 5, -1, 1, -1);
//===============================
//(4)Spanモデルによるコピー
//===============================
DefaultSheetSpanModel SpanModel = new DefaultSheetSpanModel();
SpanModel = (DefaultSheetSpanModel)fpSpread1.ActiveSheet.Models.Span;
SpanModel.Copy(0, -1, 5, -1, 1, -1);
}
using FarPoint.Win.Spread;
using FarPoint.Win.Spread.Model;
using FarPoint.Win.Spread.CellType;
private void Form1_Load(object sender, System.EventArgs e)
{
//--------------------------------
//(1)行高,列幅
//--------------------------------
fpSpread1.ActiveSheet.Rows[0].Height = 40;
fpSpread1.ActiveSheet.Columns[1].Width = 150;
//--------------------------------
//(2)背景色,罫線,配置
//--------------------------------
fpSpread1.ActiveSheet.Cells[0, 0].BackColor = Color.Red;
fpSpread1.ActiveSheet.Cells[0, 2].Border = new BevelBorder(BevelBorderType.Raised, Color.Red, Color.Blue);
fpSpread1.ActiveSheet.Cells[0, 3].BackColor = Color.Yellow;
fpSpread1.ActiveSheet.Rows[0].VerticalAlignment = CellVerticalAlignment.Center;
//--------------------------------
//(3)型,データ
//--------------------------------
ComboBoxCellType cb = new ComboBoxCellType();
cb.Items = new string[] {"aa", "bb"};
fpSpread1.ActiveSheet.Cells[0, 1].CellType = cb;
fpSpread1.ActiveSheet.Cells[0, 0].Text = "赤";
fpSpread1.ActiveSheet.Cells[0, 1].Text = "aa";
fpSpread1.ActiveSheet.Cells[0, 2].Text = "罫線設定";
fpSpread1.ActiveSheet.Cells[0, 3].Text = "結合セル";
//--------------------------------
//(4)結合
//--------------------------------
fpSpread1.ActiveSheet.AddSpanCell(0, 3, 1, 2);
}
private void button1_Click(object sender, System.EventArgs e)
{
//===============================
//(1)Axisモデルによるコピー
//===============================
DefaultSheetAxisModel AxisModel = new DefaultSheetAxisModel();
AxisModel = (DefaultSheetAxisModel)fpSpread1.ActiveSheet.Models.RowAxis;
AxisModel.Copy(0, 5, 1);
//===============================
//(2)Styleモデルによるコピー
//===============================
DefaultSheetStyleModel StyleModel = new DefaultSheetStyleModel();
StyleModel = (DefaultSheetStyleModel)fpSpread1.ActiveSheet.Models.Style;
StyleModel.Copy(0, -1, 5, -1, 1, -1);
//===============================
//(3)Dataモデルによるコピー
//===============================
DefaultSheetDataModel DataModel = new DefaultSheetDataModel();
DataModel = (DefaultSheetDataModel)fpSpread1.ActiveSheet.Models.Data;
DataModel.Copy(0, -1, 5, -1, 1, -1);
//===============================
//(4)Spanモデルによるコピー
//===============================
DefaultSheetSpanModel SpanModel = new DefaultSheetSpanModel();
SpanModel = (DefaultSheetSpanModel)fpSpread1.ActiveSheet.Models.Span;
SpanModel.Copy(0, -1, 5, -1, 1, -1);
}
キーワード
機能・仕様 HowTo
この文書は、以前は次のFAQ IDで公開されていました : 6862