作成日: 2019/07/08 最終更新日: 2019/07/08
文書種別
使用方法
詳細
指定したセル範囲、行または列の値をコピーするために、Clipプロパティを用いることができます。
FlexGridのClipプロパティには、指定した範囲の全セルの文字列が含まれます。
・デフォルトでは、列区切りはタブ文字(¥t または vbTab)、行区切りは改行文字(¥r または vbCr)になります。
・クリップしたセル範囲よりも、貼り付け先のセル範囲が大きい場合は、貼り付け先の余分なセルが無視されます。
・クリップしたセル範囲よりも、貼り付け先のセル範囲が少ない場合は、クリップ文字列の余分な部分が無視されます。
・Clipプロパティでは、非表示行(または列)を除いて※コピーされます。
※ ビルド4.0.20191.362 以降
以下に、セル範囲(button2)、行(button3)、列(button4)をコピーする例を示します。
◎サンプルコード(VB)
◎サンプルコード(C#)
FlexGridのClipプロパティには、指定した範囲の全セルの文字列が含まれます。
・デフォルトでは、列区切りはタブ文字(¥t または vbTab)、行区切りは改行文字(¥r または vbCr)になります。
・クリップしたセル範囲よりも、貼り付け先のセル範囲が大きい場合は、貼り付け先の余分なセルが無視されます。
・クリップしたセル範囲よりも、貼り付け先のセル範囲が少ない場合は、クリップ文字列の余分な部分が無視されます。
・Clipプロパティでは、非表示行(または列)を除いて※コピーされます。
※ ビルド4.0.20191.362 以降
以下に、セル範囲(button2)、行(button3)、列(button4)をコピーする例を示します。
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
setData()
End Sub
Private Sub button1_Click(sender As Object, e As EventArgs) Handles button1.Click
setData()
End Sub
Private Sub button5_Click(sender As Object, e As EventArgs) Handles button5.Click
C1FlexGrid1.Rows(2).Visible = False
End Sub
Private Sub button2_Click(sender As Object, e As EventArgs) Handles button2.Click
Dim cr As CellRange = New CellRange
cr = C1FlexGrid1.GetCellRange(1, 1, 4, 3)
textBox1.Text = cr.Clip
Dim cr2 As CellRange = New CellRange
cr2 = C1FlexGrid1.GetCellRange(6, 1, 9, 3)
cr2.Clip = textBox1.Text
' 下記コードで貼り付けることも可能
'C1FlexGrid1.Select(6, 1, 9, 3)
'C1FlexGrid1.Clip = textBox1.Text
End Sub
Private Sub button3_Click(sender As Object, e As EventArgs) Handles button3.Click
Dim cr As CellRange = New CellRange
cr = C1FlexGrid1.GetCellRange(1, 1, 1, 3)
textBox1.Text = cr.Clip
Dim cr2 As CellRange = New CellRange
cr2 = C1FlexGrid1.GetCellRange(6, 1, 6, 3)
cr2.Clip = textBox1.Text
End Sub
Private Sub button4_Click(sender As Object, e As EventArgs) Handles button4.Click
Dim cr As CellRange = New CellRange
cr = C1FlexGrid1.GetCellRange(1, 1, 4, 1)
textBox1.Text = cr.Clip
'※ある行を非表示にしてコピーし、その非表示行を含む範囲に貼り付けると、
'※表示されるデータが1行分少なくなることにご注意ください。
Dim cr2 As CellRange = New CellRange
cr2 = C1FlexGrid1.GetCellRange(1, 5, 4, 5)
cr2.Clip = textBox1.Text
End Sub
Private Sub setData()
C1FlexGrid1.Clear()
Dim i, j As Integer
For i = 1 To 4
For j = 1 To 3
C1FlexGrid1(i, j) = ("AA " + (i.ToString + j.ToString))
Next j
Next i
End Sub
setData()
End Sub
Private Sub button1_Click(sender As Object, e As EventArgs) Handles button1.Click
setData()
End Sub
Private Sub button5_Click(sender As Object, e As EventArgs) Handles button5.Click
C1FlexGrid1.Rows(2).Visible = False
End Sub
Private Sub button2_Click(sender As Object, e As EventArgs) Handles button2.Click
Dim cr As CellRange = New CellRange
cr = C1FlexGrid1.GetCellRange(1, 1, 4, 3)
textBox1.Text = cr.Clip
Dim cr2 As CellRange = New CellRange
cr2 = C1FlexGrid1.GetCellRange(6, 1, 9, 3)
cr2.Clip = textBox1.Text
' 下記コードで貼り付けることも可能
'C1FlexGrid1.Select(6, 1, 9, 3)
'C1FlexGrid1.Clip = textBox1.Text
End Sub
Private Sub button3_Click(sender As Object, e As EventArgs) Handles button3.Click
Dim cr As CellRange = New CellRange
cr = C1FlexGrid1.GetCellRange(1, 1, 1, 3)
textBox1.Text = cr.Clip
Dim cr2 As CellRange = New CellRange
cr2 = C1FlexGrid1.GetCellRange(6, 1, 6, 3)
cr2.Clip = textBox1.Text
End Sub
Private Sub button4_Click(sender As Object, e As EventArgs) Handles button4.Click
Dim cr As CellRange = New CellRange
cr = C1FlexGrid1.GetCellRange(1, 1, 4, 1)
textBox1.Text = cr.Clip
'※ある行を非表示にしてコピーし、その非表示行を含む範囲に貼り付けると、
'※表示されるデータが1行分少なくなることにご注意ください。
Dim cr2 As CellRange = New CellRange
cr2 = C1FlexGrid1.GetCellRange(1, 5, 4, 5)
cr2.Clip = textBox1.Text
End Sub
Private Sub setData()
C1FlexGrid1.Clear()
Dim i, j As Integer
For i = 1 To 4
For j = 1 To 3
C1FlexGrid1(i, j) = ("AA " + (i.ToString + j.ToString))
Next j
Next i
End Sub
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
setData();
}
private void button1_Click(object sender, EventArgs e)
{
setData();
}
private void button5_Click(object sender, EventArgs e)
{
c1FlexGrid1.Rows[2].Visible = false;
}
private void button2_Click(object sender, EventArgs e)
{
CellRange cr = new CellRange();
cr = c1FlexGrid1.GetCellRange(1, 1, 4, 3);
textBox1.Text = cr.Clip;
CellRange cr2 = new CellRange();
cr2 = c1FlexGrid1.GetCellRange(6, 1, 9, 3);
cr2.Clip = textBox1.Text;
// 下記コードで貼り付けることも可能
//c1FlexGrid1.Select(6, 1, 9, 3);
//c1FlexGrid1.Clip = textBox1.Text;
}
private void button3_Click(object sender, EventArgs e)
{
CellRange cr = new CellRange();
cr = c1FlexGrid1.GetCellRange(1, 1, 1, 3);
textBox1.Text = cr.Clip;
CellRange cr2 = new CellRange();
cr2 = c1FlexGrid1.GetCellRange(6, 1, 6, 3);
cr2.Clip = textBox1.Text;
}
private void button4_Click(object sender, EventArgs e)
{
CellRange cr = new CellRange();
cr = c1FlexGrid1.GetCellRange(1, 1, 4, 1);
textBox1.Text = cr.Clip;
// ※ある行を非表示にしてコピーし、その非表示行を含む範囲に貼り付けると、
// ※表示されるデータが1行分少なくなることにご注意ください。
CellRange cr2 = new CellRange();
cr2 = c1FlexGrid1.GetCellRange(1, 5, 4, 5);
cr2.Clip = textBox1.Text;
}
private void setData()
{
c1FlexGrid1.Clear();
textBox1.Text = "";
for (int i = 1; i < 5; i++)
{
for (int j = 1; j < 4; j++)
{
c1FlexGrid1[i, j] = "AA" + i.ToString() + j.ToString();
}
}
}
{
setData();
}
private void button1_Click(object sender, EventArgs e)
{
setData();
}
private void button5_Click(object sender, EventArgs e)
{
c1FlexGrid1.Rows[2].Visible = false;
}
private void button2_Click(object sender, EventArgs e)
{
CellRange cr = new CellRange();
cr = c1FlexGrid1.GetCellRange(1, 1, 4, 3);
textBox1.Text = cr.Clip;
CellRange cr2 = new CellRange();
cr2 = c1FlexGrid1.GetCellRange(6, 1, 9, 3);
cr2.Clip = textBox1.Text;
// 下記コードで貼り付けることも可能
//c1FlexGrid1.Select(6, 1, 9, 3);
//c1FlexGrid1.Clip = textBox1.Text;
}
private void button3_Click(object sender, EventArgs e)
{
CellRange cr = new CellRange();
cr = c1FlexGrid1.GetCellRange(1, 1, 1, 3);
textBox1.Text = cr.Clip;
CellRange cr2 = new CellRange();
cr2 = c1FlexGrid1.GetCellRange(6, 1, 6, 3);
cr2.Clip = textBox1.Text;
}
private void button4_Click(object sender, EventArgs e)
{
CellRange cr = new CellRange();
cr = c1FlexGrid1.GetCellRange(1, 1, 4, 1);
textBox1.Text = cr.Clip;
// ※ある行を非表示にしてコピーし、その非表示行を含む範囲に貼り付けると、
// ※表示されるデータが1行分少なくなることにご注意ください。
CellRange cr2 = new CellRange();
cr2 = c1FlexGrid1.GetCellRange(1, 5, 4, 5);
cr2.Clip = textBox1.Text;
}
private void setData()
{
c1FlexGrid1.Clear();
textBox1.Text = "";
for (int i = 1; i < 5; i++)
{
for (int j = 1; j < 4; j++)
{
c1FlexGrid1[i, j] = "AA" + i.ToString() + j.ToString();
}
}
}
旧文書番号
84220