電子書籍の厳選無料作品が豊富!

エクセル上でボタンを押すと写真データーを所定の位置に貼り付ける
書式(excel2003で作成)を使っています。

excel2010になってから、皆さんが質問されているようにリンク張付になってしまい
保存していた書類から写真が消えてしまいました。
今は作成したらPDFで保存していますが、修正ができません。

そこで、ネットでいろいろ検索して、マクロをいじっているのですが、
コピー→削除→ペースト(セルの位置)まではなんとかできたのですが
指定した位置に貼り付ける方法が分かりません。

よろしくお願いします。


修正中のマクロが下記です。

Sub select_pic()

Dim tt, ttl, Item As String
Dim FileNamePath As Variant

'ファイルのパスを取得します
tt = "写真 ファイル (*.jpg),*.jpg"
ttl = "写真ファイルを選択してください"
FileNamePath = SelectFileNamePath(tt, ttl)

If FileNamePath = False Then 'キャンセルボタンが押された
 End

End If

ActiveSheet.Pictures.Insert(FileNamePath).Select

Selection.ShapeRange.LockAspectRatio = msoTrue

Selection.ShapeRange.Width = 263

Selection.ShapeRange.Left = 12
Selection.ShapeRange.Top = 45

Selection.CopyPicture
Selection.Delete

ActiveSheet.Paste

End Sub

 最後のPasteの前後に座標を入れればいいのだと思いますが
エラーが出てだめです。分かる人にとっては簡単なのでしょうが
よろしくお願いします。

A 回答 (1件)

こんな感じでどうでしょうか。



(例1)
With Activesheet
.Paste
With .Pictures(.Pictures.Count)
.Left = 100
.Top = 50
End With
End With

(例2)
With Activesheet
.Paste
With .Pictures(.Pictures.Count)
.Left = ActiveCell.Left
.Top = ActiveCell.Top
End With
End With

(例3)
With Activesheet
.Paste
With .Pictures(.Pictures.Count)
.Left = Range("B2").Left
.Top = Range("B2").Top
End With
End With
    • good
    • 0
この回答へのお礼

早速ご回答いただき、ありがとうございます。
例1を入力して、座標値を変えたらできました。

助かりました。

例2や例3についてもいろいろやってみたいと思います。ありがとうございました。

お礼日時:2014/05/21 14:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!