|
こんばんわ。
画像の細かい文字の線が消えたりするんは、どうしようもないんとちゃうかなー
エクセルっていうか、UserFormの表示の限界やと思うよ。
ところで、画像はフォームに直接(イメージコントロール等を使わずに)表示させてるんかな?
フォームのサイズが固定ってことやったら、画像は文字がつぶれないように100%で表示させて、
そのかわりフォームにスクロールバーを付けるってのではどーでっか?
ただし、イメージコントロールが必要になります。
ユーザーフォーム(UserForm1)にイメージコントロール(Image1)を1個配置して、
下記コードで実験してみてください。(各プロパティ設定はデフォルトのまま)
'標準モジュール
Sub test()
Dim FileName As Variant
Dim ImageWidth As Single
Dim ImageHeight As Single
FileName = Application.GetOpenFilename("画像ファイル (*.bmp;*.jpg),*.bmp;*.jpg")
If Not FileName = False Then
Load UserForm1
With UserForm1
With .Image1
.BorderStyle = fmBorderStyleNone
.Picture = LoadPicture(FileName)
.AutoSize = False
.AutoSize = True
.Left = 0
.Top = 0
ImageWidth = .Width
ImageHeight = .Height
End With
If .InsideWidth < ImageWidth Then
.ScrollWidth = ImageWidth
.ScrollBars = .ScrollBars Or fmScrollBarsHorizontal
End If
If .InsideHeight < ImageHeight Then
.ScrollHeight = ImageHeight
.ScrollBars = .ScrollBars Or fmScrollBarsVertical
End If
.Show
End With
Unload UserForm1
Set UserForm1 = Nothing
End If
End Sub
画像はフォームの左上に表示されます。画像がはみ出す場合はスクロールバーが表示されます。
試してみてな。
ほな。
|
|