ここから本文です

エクセル2003 セルの大きさに合わせて画像を挿入するマクロを探しています 画...

mas********さん

2018/11/2819:05:54

エクセル2003
セルの大きさに合わせて画像を挿入するマクロを探しています

画像サイズは400×400程度なのですが・・・

セルをダブルクリックしたらフォルダにある画像をリサイズしてセル幅に合わせた挿入はマクロ出来ないでしょうか?

画像の比率は維持しなくてもいいです。
検索して探してみてはいるのですが・・・なかなか分からず(;´▽`A``

どなたかご回答宜しくお願いします。

閲覧数:
79
回答数:
2
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

kky********さん

2018/11/2907:36:01

画像ファイルはダイログから選択する方法にしてみました。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim fname As Variant
Dim shp As Shape
Cancel = True
fname = Application.GetOpenFilename("JPEGファイル(*.jpg),*.jpg", MultiSelect:=False)
If VarType(fname) = vbBoolean Then Exit Sub
With Target
Set shp = ActiveSheet.Shapes.AddPicture(FileName:=fname, _
LinkToFile:=False, SaveWithDocument:=True, _
Left:=.Left, Top:=.Top, Width:=.Width, Height:=.Height)
End With
End Sub

質問した人からのコメント

2018/11/29 18:08:26

とても素晴らしいマクロです!!
当方の考え通りで使いやすいです(๑◕ܫ◕๑)

有難う御座いました。

ベストアンサー以外の回答

1〜1件/1件中

tor********さん

2018/11/2820:49:21

ファイル名がダブルクリックしたセルに入ってる
ファイルを入れてるフォルダはブックが入っているフォルダ
という条件で

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim myFilePath As String, myFileName As String
    Dim myShape As Shape
    If ActiveCell.Value = "" Then Exit Sub
    myFilePath = ActiveWorkbook.Path & "\" & ActiveCell.Value
    myFileName = Dir(myFilePath)
    If myFileName = "" Then Exit Sub
    myFilePath = ActiveWorkbook.Path & "\" & myFileName
    With Target
        Set myShape = ActiveSheet.Shapes.AddPicture( _
                    Filename:=myFilePath, LinkToFile:=False, _
                    SaveWithDocument:=True, Left:=.Left, _
                    Top:=.Top, Width:=.Width, Height:=.Height)
    End With
    Cancel = True
End Sub

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる