VBA100本ノック 29本目を動画で解説しています。Excelの神髄さんの模範解答はコチラ
問題
#VBA100本ノック 29本目
ファイル選択ダイアログで画像ファイルを指定し、その画像をアクティブセルにリンクしない図として貼り付けてください。
貼り付けた画像は、縦横比を維持したままセル内に収めてください。
セル内の位置はなるべく真ん中に。
※選択できる拡張子は適当に。

解答
Sub test1()
ActiveSheet.Shapes.AddPicture "C:\29本目\部長.png", False, True, 0, 0, -1, -1
End Sub
Sub test2()
Dim rng As Range
Set rng = ActiveCell
Dim sPath As String
With Application.FileDialog(msoFileDialogFilePicker)
.Show
sPath = .SelectedItems(1)
End With
Dim sp As Shape
Set sp = ActiveSheet.Shapes.AddPicture(sPath, False, True, rng.Left, rng.Top, -1, -1)
If rng.Width > rng.Height Then
sp.Height = rng.Height
Else
sp.Width = rng.Width
End If
sp.Top = rng.Top + (rng.Height - sp.Height) / 2
sp.Left = rng.Left + (rng.Width - sp.Width) / 2
End Sub

新人君
画像を挿入するなんて
楽しそうですね!

ブチョ
画像だぁ?
時代は活動写真だろ!

新人君
大正時代生きとんかこの人…
コメント