- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelのバージョン違いによる対処の仕方)
Excelのバージョン違いによる対処の仕方
このQ&Aのポイント
- Excel 2003のVBAで作成したマクロが、Excel 2007以降で動作しない問題について質問です。
- Excel 2007以降で実行するとリンクになり、ファイルの場所や内容が変わるリスクがあります。
- Excel 2003と同じような動作を実現するためには、どのようにすれば良いのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
2010以降はActiveSheet.Pictures.Insertメソッドはリンク貼付けに仕様変更されています。 2007以前と同じ動きを再現させるためには、画像をリンク貼付けで挿入後、コピーして一旦削除、同じ位置に画像として貼り付け直す必要があります。 補足ですが、2003以前ではシートの左上端に画像が保存されていましたが、2007では別途コードで挿入位置を指定する必要があります。 With ActiveSheet.Pictures.Insert("C:\PICTURE\DOG.JPG") .Top = ActiveCell.Top '上端 .Left = ActiveCell.Left '左端 .CopyPicture 'クリップボードにコピー .Delete '画像をいったん削除 End With ActiveSheet.Paste '画像として貼り付け
その他の回答 (1)
- kybo
- ベストアンサー率53% (349/647)
回答No.1
リンクになってしまうのは、Excelのバグなので、「ActiveSheet.Shapes.AddPicture」を使って挿入して下さい。 Excel 2010 で Pictures.Insert メソッドを使用して図をワークシートに挿入すると図がリンク オブジェクトとして挿入される http://support.microsoft.com/kb/2396509/ja