ACCESSでラベルの余白と高さ、幅を設定する
ACCESS2007でラベル印刷を印刷をしようとしています。
ページ設定ができないランタイム環境でも使えるようにラベルの印字位置を設定するVBAを考えています。
フォームに設定値を入力する「上余白」、「左余白」、「ラベル幅」、「ラベル高さ」という非連結のテキストボックスを4個作りました。
ラベル印刷用にレポートを作成し、「レポートA」としています。
レポートAにはページ設定で、基本となるラベルのレイアウトなどを設定しています。
フォームに「適用」というボタンを配置し、クリック時のイベントに以下のようなコードを書き込みました。
Private Sub 適用_Click()
DoCmd.OpenReport ("ラベルA"), acViewDesign, , , acHidden
With Reports(ラベルA).Printer
.DefaultSize = False
.TopMargin = Me.上余白.Value
.LeftMargin = Me.左余白.Value
.ItemSizeWidth = Me.ラベル幅.Value
.ItemSizeHeight = Me.ラベル高さ.Value
End With
DoCmd.Close acReport, ("ラベルA"), acSaveYes
End Sub
動作させるとエラーは出ないのですが、設定値がちっとも反映されません。
何が間違っているのでしょうか?
お礼
素早い回答ありがとうございます! とても助かります。 クリック時のイベントは、クリックされた時にイベント発生するような?関数を書けばいいのかなと予想しているのですが、動的に作った配列なラベルでどう書いたらいいのか想像がつかないのです。 動的に作っている最中に別個イベント発生処理の何かを埋め込む必要があるのかなと思ったりしています。