• ベストアンサー

アクセスVBAで,フォントの指定ダイアログボックスを表示させたい。

アクセスVBAで,フォントの指定ダイアログボックスを表示させたい。 アクセスVBAで,フォント,フォントサイズ等を指定するダイアログボックスを表示させて,そこで指定した値(フォント名やフォントサイズ・太さなど)を取得出るのでしょうか? どなたかご存じの方おられましたらお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.1

APIになりますが、下記を参考に、 http://www.winapi-database.com/Window/CommonDialog/ChooseFont.html APIの宣言は、ダウンロード出来るChooseFont.lzhのModule1.BASをインポートして、 上記ページのPrivate Sub Command1_Click()を少しアレンジさせていただいて、 Sub test() Dim lpcf As tagCHOOSEFONT Dim lplf As LOGFONT Dim hMem As Long, hGlobal As Long Dim rc As Long (中略) '条件設定 With lpcf .lStructSize = Len(lpcf) .hwndOwner = Application.hWndAccessApp '変更 .hDC = 0 .lpLogFont = hGlobal .iPointSize = 0 .flags = CF_APPLY Or CF_EFFECTS Or CF_ENABLEHOOK Or _ CF_SCREENFONTS Or CF_SHOWHELP Or CF_USESTYLE Or CF_LIMITSIZE .rgbColors = RGB(255, 0, 0) .lCustData = 0 .lpfnHook = ChangeAddressOf(AddressOf DialogHookProc) .lpTemplateName = "" .hInstance = 0 '変更 .lpszStyle = String(256, Chr(0)) .nFontType = 8 .MISSING_ALIGNMENT = 0 .nSizeMin = 1 .nSizeMax = 100 End With (中略) End Sub で、出来ました。なお、Access2000/WindowsXPでの話です。

kaoru_jin
質問者

お礼

ありがとうございました。 早速やってみます。 と言っても初心者の私にとっては, かなり難易度の高そうな雰囲気です。 次の休日にゆっくりと挑戦してみます。 たいへんありがとうございました。