2012年11月30日

レポートでフォントサイズを自動縮小したい[AccessVBA]

Accessのレポートで、フィールド内の文字を縮小させるときに

「特定の文字数を超えたら、フォントサイズを○ptにする」っていうのはやっていたのですが、

自動的にフィールドに入りきるフォントサイズに出来ることを知りませんでした。。

TextWidthで、文字列の幅がわかるんですねぇ。



Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer)
    Dim strTxt As String
Dim i As Integer
Dim BoxSize As Long
Dim TxtSize As Long

Me.FontSize = 10
Me.[テキストボックス].FontSize = 10

strTxt = Me.[テキストボックス].Text
i = Me.[テキストボックス].FontSize

BoxSize = Me.[テキストボックス].Width
TxtSize = Me.TextWidth(strTxt)

Do While BoxSize < TxtSize
Me.[テキストボックス].FontSize = i - 1
Me.FontSize = i - 1
TxtSize = Me.TextWidth(strTxt)
i = i - 1
Loop

End Sub

なるほど〜かわいい


posted by Ponta at 18:33| Comment(0) | TrackBack(0) | AccessVBA | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:


この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。