ここから本文です

エクセルにマクロを使って画像を1列10枚ずつ連続して挿入したいです。

ben********さん

2017/1/2723:09:14

エクセルにマクロを使って画像を1列10枚ずつ連続して挿入したいです。

仕事で必要になったので全くの初心者ながらネットの見本を見様見真似で切り貼りして何とか
”画像を連続して下に向かって隙間なくセルの大きさに合わせて貼り続ける”というマクロまで完成できました。
しかしここから10枚づつ次の列の1から(たとえばA10まで貼り終わったらB1に移動してB10まで)を
選んだ写真すべてを貼り終わるまで繰り返すようにしたいのですが全くのお手上げです。
何か良い方法はありませんでしょうか・・・

=====
Sub Test()
Dim fName, pict As Picture
fName = Application.GetOpenFilename("JPG, *.jpg", MultiSelect:=True)
If IsArray(fName) Then
For i = 1 To UBound(fName)
ActiveSheet.Shapes.AddPicture fName(i), False, True, ActiveCell.Left, ActiveCell.Top, ActiveCell.Width, ActiveCell.Height
ActiveCell.Offset(1, 0).Activate
Next i
End If
End Sub

閲覧数:
56
回答数:
2
お礼:
250枚

違反報告

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

りょうさん

2017/1/2800:02:28

こんな感じでいかがでしょうか?

Sub Test()
Dim fName, pict As Picture

Dim line As Integer '追加
Dim col As Integer '追加

Dim rg As Range '追加

fName = Application.GetOpenFilename("JPG, *.jpg", MultiSelect:=True)
If IsArray(fName) Then

line = 1 '追加
col = 1 '追加

For i = 1 To UBound(fName)

Set rg = ActiveSheet.Cells(line, col) '追加

ActiveSheet.Shapes.AddPicture fName(i), False, True, rg.Left,
rg.Top, rg.Width, rg.Height '変更

line = line + 1 '追加
If line > 10 Then '追加
line = 1 '追加
col = col + 1 '追加
End If '追加
Next i
End If

End Sub

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

2017/1/28 11:25:43

ありがとうございました!
回答いただいたお二人とも本当に感謝しています。

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

1〜1件/1件中

2017/1/2801:32:54

下記のコードでいかがでしょうか?


Option Explicit
Sub Sample()
Dim shp As Shape
Dim fName As Variant
Dim i As Long

For Each shp In ActiveSheet.Shapes
shp.Delete
Next shp

fName = Application.GetOpenFilename("JPG, *.jpg", MultiSelect:=True)
If Not IsArray(fName) Then fName = Array(fName)
For i = 1 To UBound(fName)
With Cells((i - 1) Mod 10 + 1, Int((i - 1) \ 10) + 1)
ActiveSheet.Shapes.AddPicture fName(i), False, True, .Left, .Top, .Width, .Height
.Offset(1, 0).Activate
End With
Next i
End Sub

下記のコードでいかがでしょうか?


Option Explicit
Sub Sample()
 Dim...

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

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

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

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

閉じる

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

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

閉じる