作成日: 2018/07/13 最終更新日: 2018/07/13
文書種別
使用方法
詳細
C1XLBookのNamedRangesプロパティの中から、"Print_Area"で始まる「名前付き範囲」を探して、そのRowFrom/RowTo/ColumnFrom/ColumnToを参照することで、印刷範囲を取得できます。
※印刷範囲では、「名前付き範囲」のNameプロパティは"Print_AreaX"という形になっており、最後の「X」の部分から何番目のシートであるかが判別可能です。
◎サンプルコード(VB)
◎サンプルコード(C#)
【上記コードの実行結果(例)】
シート番号 = 1 印刷範囲 = 1 3 0 5
シート番号 = 2 印刷範囲 = 0 10 0 10
※印刷範囲では、「名前付き範囲」のNameプロパティは"Print_AreaX"という形になっており、最後の「X」の部分から何番目のシートであるかが判別可能です。
◎サンプルコード(VB)
TextBox1.Text = ""
For Each nr As XLNamedRange In C1XLBook1.NamedRanges
' "Print_Area"という名前付き範囲である場合
If nr.Name.StartsWith("Print_Area") Then
' シート番号を取得
Dim strSheetno As String
strSheetno = (CType(nr.Name.Replace("Print_Area", ""), Integer) + 1).ToString()
' 印刷範囲を取得
TextBox1.Text = TextBox1.Text + "シート番号 = " + strSheetno + " 印刷範囲 = " _
+ nr.CellRange.RowFrom.ToString() + " " _
+ nr.CellRange.RowTo.ToString() + " " _
+ nr.CellRange.ColumnFrom.ToString() + " " _
+ nr.CellRange.ColumnTo.ToString() + vbCrLf
End If
Next
For Each nr As XLNamedRange In C1XLBook1.NamedRanges
' "Print_Area"という名前付き範囲である場合
If nr.Name.StartsWith("Print_Area") Then
' シート番号を取得
Dim strSheetno As String
strSheetno = (CType(nr.Name.Replace("Print_Area", ""), Integer) + 1).ToString()
' 印刷範囲を取得
TextBox1.Text = TextBox1.Text + "シート番号 = " + strSheetno + " 印刷範囲 = " _
+ nr.CellRange.RowFrom.ToString() + " " _
+ nr.CellRange.RowTo.ToString() + " " _
+ nr.CellRange.ColumnFrom.ToString() + " " _
+ nr.CellRange.ColumnTo.ToString() + vbCrLf
End If
Next
◎サンプルコード(C#)
textBox1.Text = "";
foreach (XLNamedRange nr in c1XLBook1.NamedRanges)
{
// "Print_Area"という名前付き範囲である場合
if (nr.Name.StartsWith("Print_Area"))
{
// シート番号を取得
string strSheetno;
strSheetno = (int.Parse(nr.Name.Replace("Print_Area", "")) + 1).ToString();
// 印刷範囲を取得
textBox1.Text = textBox1.Text + "シート番号 = " + strSheetno + " 印刷範囲 = "
+ nr.CellRange.RowFrom.ToString() + " "
+ nr.CellRange.RowTo.ToString() + " "
+ nr.CellRange.ColumnFrom.ToString() + " "
+ nr.CellRange.ColumnTo.ToString() + "¥r¥n";
}
}
foreach (XLNamedRange nr in c1XLBook1.NamedRanges)
{
// "Print_Area"という名前付き範囲である場合
if (nr.Name.StartsWith("Print_Area"))
{
// シート番号を取得
string strSheetno;
strSheetno = (int.Parse(nr.Name.Replace("Print_Area", "")) + 1).ToString();
// 印刷範囲を取得
textBox1.Text = textBox1.Text + "シート番号 = " + strSheetno + " 印刷範囲 = "
+ nr.CellRange.RowFrom.ToString() + " "
+ nr.CellRange.RowTo.ToString() + " "
+ nr.CellRange.ColumnFrom.ToString() + " "
+ nr.CellRange.ColumnTo.ToString() + "¥r¥n";
}
}
【上記コードの実行結果(例)】
シート番号 = 1 印刷範囲 = 1 3 0 5
シート番号 = 2 印刷範囲 = 0 10 0 10
関連情報
旧文書番号
83046