アプリ版:「スタンプのみでお礼する」機能のリリースについて

よろしくお願いいたします。
Excel2013を使用しています。

ExcelのVBAを利用し、セルの中の画像を選択したいです。
すべてのオブジェクトを選択するコードはありましたが、
単体を選択する方法がわかりません。

選択後に、
Selection.ShapeRange.name = "画像0001"
のように、画像に名前を付ける予定です。

よろしくお願いいたします。

質問者からの補足コメント

  • うーん・・・

    返信ありがとうございます。
    ①の方法になります。

    セル1個内に画像が1個入っている行が数行あります。
    上からオブジェクト(画像)をコードで選択し、選択した画像にコードで名前を付けて、全行繰り返します
    画像名は以降の処理のために連番をつける予定です。

    for i=1 to 行数 step 1
      セル内の画像を選択
      Selection.ShapeRange.name = "画像"& i (?)
    next i

    のような方法があると助かります。
    よろしくお願いいたします。

    No.1の回答に寄せられた補足コメントです。 補足日時:2017/10/03 09:28

A 回答 (2件)

同じ行に画像が絶対にないとしたら以下で良いと思います。


---------------------------------------------------------------------------------------
Sub test1()
Dim i As Long
For i = 1 To ActiveSheet.Shapes.Count
ActiveSheet.Shapes(i).Name = "画像" & Format(ActiveSheet.Shapes(i).TopLeftCell.Row, "0000")
Next
End Sub
---------------------------------------------------------------------------------------
同じ行で複数画像が有った場合はエラーしてしまいます。
理由は同じ名前を付けることが出来ない為です。
このままで良いのでしょうか?
    • good
    • 1
この回答へのお礼

できました!!
ありがとうございます!
画像は1行に1枚で管理しているため、頂いた説明の通りで問題なく選択→名前を付けることができました。

大変助かりました。
ありがとうございました。

お礼日時:2017/10/03 14:39

「選択後に」とはどのようにするつもりでしょうか?


① オブジェクトを先に選択しておいてから、コードで名前を付ける。
② オブジェクトをコードで次々に選択していき「InputBox」などで入力するのでしょうか?
この回答への補足あり
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A