
Excelのシートに以下のマクロを組みましたが、空白でダブルクリックして、写真選択。
写真をダブルクリックで貼付けまではいいのですが、画像にリンクが設定されてしまい、
元データを削除すると、貼り付けた画像まで消えてしまいます。
マクロは、詳しくないので、貼り付ければいいようにお願いいしたいです。
よろしくお願い致します。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
Cancel As Boolean)
Dim PicFile As Variant
Dim rX As Double, rY As Double
'[ファイルを開く]ダイアログボックスを表示
PicFile = Application.GetOpenFilename( _
"画像ファイル,*.jpg;*.jpeg;*.gif;*.tif;*.png;*.bmp")
If VarType(PicFile) = vbBoolean Then Cancel = True: Exit Sub
Application.ScreenUpdating = False
'画像を挿入
With ActiveSheet.Pictures.Insert(PicFile)
rX = Target.Width / .Width
rY = Target.Height / .Height
If rX > rY Then
.Height = .Height * rY
Else
.Width = .Width * rX
End If
'セルの中央(横方向/縦方向の中央)に配置
.Left = Target.Left + (Target.Width - .Width) / 2
.Top = Target.Top + (Target.Height - .Height) / 2
End With
Application.ScreenUpdating = True
Cancel = True
End Sub
No.2ベストアンサー
- 回答日時:
読み飛ばしてしまいました。
>マクロは、詳しくないので、貼り付ければいいようにお願いいしたいです。
With ActiveSheet.Pictures.Insert(PicFile)
下記に変更(1行のみ)
With ActiveSheet.Shapes.AddPicture(PicFile, msoFalse, msoTrue, Selection.Left, Selection.Top, -1, -1)
各パラメーターは、リファレンス参照してください。
No.1
- 回答日時:
こんにちは、
同様のご質問が最近多い様な。。
失礼しました。
ActiveSheet.Pictures.Inserを
ActiveSheet.Shapes.AddPicture
に変更してみてください。
メソッドにおけるパラメータは、下記を参考にしてみてください。
https://docs.microsoft.com/ja-jp/office/vba/api/ …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Excel(エクセル) Excel2019 マクロを使用し画像を貼り付けした際のリンク切れについて 2 2022/11/15 16:14
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) Excelにて、シート1の行を削除するとシート2のシート1と同じ番号の行も削除したい 3 2022/05/08 04:24
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
このQ&Aを見た人はこんなQ&Aも見ています
-
Excel2019 マクロを使用し画像を貼り付けした際のリンク切れについて
Excel(エクセル)
-
マクロで画像挿入→エラー「リンクされたイメージを表
Excel(エクセル)
-
【VBA】写真の縦横比を変えずに貼り付ける
Visual Basic(VBA)
-
-
4
セルをダブルクリックで、画像を選択、挿入したい時
Excel(エクセル)
-
5
Excel マクロ 画像をリンクせずかつ圧縮して貼りつける方法を教えてください
Excel(エクセル)
-
6
Pictures.Insertメソッド⇒Shapes.AddPictureメソッドに変更したいです。
Visual Basic(VBA)
-
7
エクセルマクロでシート内にある画像のみを選択する
Excel(エクセル)
-
8
エクセル フォルダの画像を画像名で検索して貼り付け
Excel(エクセル)
-
9
セルに貼り付けた画像の上からダブルクリックを機能させたい
Visual Basic(VBA)
-
10
EXCELシートに貼り付けた図のリンク先の変更方法
Visual Basic(VBA)
-
11
VBAエクセルに貼り付けた画像をセルにあった大きさにしたい(等倍)
Excel(エクセル)
-
12
任意フォルダから画像をすべてエクセルの指定マスに貼り付けをしたい
Visual Basic(VBA)
-
13
エクセルのセルに指定画像(.jpg)を自動で貼り付けたいです。
Excel(エクセル)
-
14
VBAでセルを指定した画像のコピー&ペーストを繰り返したい
Excel(エクセル)
-
15
エクセルVBAで縦向きの画像の挿入・回転
Excel(エクセル)
-
16
エクセルにハイパーリンクで貼り付けた画像を 通常の埋め込み画像に変換したいのですが、方法が分かる方が
Excel(エクセル)
-
17
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
18
画像を削除したい(VBA)
Word(ワード)
-
19
エクセル マクロ 相対パスから画像を読み込みたいです。
その他(Microsoft Office)
-
20
マクロを実行すると画像がズレてしまいます
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
一つのTeratermのマクロで複数...
-
Excel・Word リサーチ機能を無...
-
Excel_マクロ_現在開いているシ...
-
バッチファイルでEXCELを起動し...
-
ExcelのVBA。public変数の値が...
-
ExcelのVBAを使ってタイトル行...
-
メッセージボックスのOKボタ...
-
マクロ実行時、ユーザーフォー...
-
エクセルに張り付けた写真のフ...
-
アクセス マクロ クリップボ...
-
EXCEL VBAでマクロの最後でFind...
-
TERA TERMを隠す方法
-
WORD テキストボックスを全ペ...
-
EXCELのVBAマクロでパソコンを...
-
TeraTermマクロの文字列結合
-
エクセルで別のセルにあるふり...
-
マクロで待機時間を作りたい
-
accessで未入力の場合にメッセ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
Excel・Word リサーチ機能を無...
-
一つのTeratermのマクロで複数...
-
Excel_マクロ_現在開いているシ...
-
メッセージボックスのOKボタ...
-
Excel マクロ VBA プロシー...
-
ExcelのVBA。public変数の値が...
-
エクセルに張り付けた写真のフ...
-
エクセルで別のセルにあるふり...
-
ExcelVBAでPDFを閉じるソース
-
ダブルクリックで貼り付けた画...
-
Excel マクロでShearePoint先の...
-
TERA TERMを隠す方法
-
マクロ実行時、ユーザーフォー...
-
Excelのセル値に基づいて図形の...
-
特定文字のある行の前に空白行...
-
エクセルマクロでワードの一ペ...
-
エクセルで縦に並んだデータを...
-
Excel VBAからAccessマクロを実...
おすすめ情報