VBA のトラブル

CreateControl/CreateReportControl関数でラベルを作成しても、大きさが指定どおりにならない

最終更新日:2009/6/11

Access VBA では、下記関数を使い VBA でフォームやレポート上にラベルやテキストボックスを動的に作成することができます。 最後の2つの引数 Width と Height ではコントロールの大きさを指定するのですが、第二引数 ControlType にラベルを示す定数 acLabel を指定した場合、その大きさが反映されません。

CreateControl(FormName, ControlType, Section, Parent, ColumnName, Left, Top, Width, Height)

CreateReportControl(ReportName, ControlType, Section, Parent, ColumnName, Left, Top, Width, Height)

ラベルに表示する文字の大きさに合わせてラベルの大きさを調整するには、作成したコントロールで SizeToFit というメソッドを実行します。

Set lblNew = CreateControl(FormName, acLabel, acDetail, "", "", lngLeft, lngTop, lngWidth, lngHeight)
lblNew.SizeToFit


<関連URL>

  • Access レポートを作成する