Delphi Programming / Object Pascal
[掲載 2009年05月25日] [更新 2013年12月16日] エクセル操作フォームEx |
エクセル操作フォームEx 参考コード類
改ページの設定と設定削除 |
動作確認等 |
Windows 7 U64(SP1) + Delphi XE Pro + Excel 2010 |
指定列位置から,次のページとする例です.ここでは C 列から次のページとします. |
|
図1
実行結果 |
procedure TplExcelFormEx1.Button1Click(Sender: TObject);
var
ARange : Txlf2000Range;
begin
ARange := xlfExcelSheet.Range['C6','C6'];
xlfExcelSheet.VPageBreaks.Add(ARange);
end;
指定行から改ページする例です.ここでは 5 行目から次のページとします. |
|
図2
実行結果 |
procedure TplExcelFormEx1.Button2Click(Sender: TObject);
begin
xlfExcelSheet.HPageBreaks.Add(xlfExcelSheet.Range['D5','D5']);
end;
指定セルから改ページする例です.ここでは現在アクティブなセルから次ページとします. |
|
図3
実行結果 |
procedure TplExcelFormEx1.Button3Click(Sender: TObject);
var
ARange : Txlf2000Range;
begin
//現在アクティブなセルのRangeオブジェクトを取得
ARange := xlfExcelApp.ActiveCell;
xlfExcelSheet.HPageBreaks.Add(ARange);
xlfExcelSheet.VPageBreaks.Add(ARange);
end;
任意のセルをコードで指定するには,次のようにします.
このコードは C6 から改ページします. |
procedure TplExcelFormEx1.Button5Click(Sender: TObject);
var
ARange : Txlf2000Range;
begin
ARange := xlfExcelSheet.Range['C6','C6'];
ARange.PageBreak := Integer(xlPageBreakManual);
end;
指定セルに対して,改ページを設定したり,解除するコードです.ただし,このコードは常にアクティブなセルに対してだけ有効です.したがって,実際の使用では,改ページを設定したセルを記憶しておく必要があります. |
|
図4
実行結果例 |
|
図5
もう一度クリックすると解除 |
procedure TplExcelFormEx1.Button6Click(Sender: TObject);
var
objCmdBars : OleVariant;
begin
xlfSetFocusExcel;
if xlfExcelVersionNo >= 12 then begin
objCmdBars := xlfExcelApp.CommandBars;
try
objCmdBars.FindControl(ID := 1588).Execute;
except
end;
end;
end;
指定セルに改ページが設定されている場合はそれを解除します.設定されていなければ何もしません. |
procedure TplExcelFormEx1.Button7Click(Sender: TObject);
var
ARange : Txlf2000Range;
begin
ARange := xlfExcelSheet.Range['D5','D5'];
ARange.PageBreak := Integer(xlPageBreakNone);
end;
改ページの設定を全て解除し,デフォルトの改ページ設定に戻します. |
procedure TplExcelFormEx1.Button8Click(Sender: TObject);
var
ARange : Txlf2000Range;
begin
ARange := xlfExcelSheet.Cells;
ARange.PageBreak := Integer(xlPageBreakNone);
end;
同じく改ページの設定を全て解除しますが,コマンド ID を使用する例です. |
procedure TplExcelFormEx1.Button9Click(Sender: TObject);
var
objCmdBars : OleVariant;
begin
if xlfExcelVersionNo >= 12 then begin
objCmdBars := xlfExcelApp.CommandBars;
try
objCmdBars.FindControl(ID := 1585).Execute;
except
end;
end;
end;
|