現在指定された場所にたいしてファイルから読み込んだ画像を貼り付け、プレビュー・印刷ができるようにチャレンジしていますが、プレビューすると画像のリサイズがとけてしまいます。プレビュー表示をはさんでも指定したリサイズがとけないようにする方法はないでしょうか?
Dim SourceAspect As Double
Dim CopyAspect As Double
Dim PC2 As IPictureDisp
Dim cWidth As Single
Dim cHeight As Single
Dim Aspect As Single
※処理省略
Set PC2 = LoadPicture(FileName)
SourceAspect = PC2.Width / PC2.Height
CopyAspect = XLObj.Selection.Width / XLObj.Selection.Height
'ソースのほうが横長
If SourceAspect > CopyAspect Then
'横を基準
cWidth = XLObj.Selection.Width
cHeight = (cWidth / SourceAspect)
Else
'縦を基準
cHeight = XLObj.Selection.Height
cWidth = (cHeight * SourceAspect)
End If
'エクセルに図面を書き込み(オブジェクトに対して中央表示)
XLWB.ActiveSheet.Shapes.AddPicture FileName, False, True, XLObj.Selection.Left + (XLObj.Selection.Width - cWidth) / 2, XLObj.Selection.Top + (XLObj.Selection.Height - cHeight) / 2, cWidth, cHeight
※処理省略
XLObj.Visible = True
※印刷処理
XLWB.Close False
XLObj.Quit
このように処理しています。
Excel処理に詳しい方、教えていただければ光栄です。
すみません!宣言がぬけていました!
Dim XLObj As Excel.Application
Dim XLWB As Excel.Workbook
です。ごめんなさい!
ツイート | ![]() |