
No.1ベストアンサー
- 回答日時:
バージョン幾つのエクセルを使っているのかによって,正しいマクロの書きぶりが変わる場合があります。
ご相談投稿時には,ご利用のソフト姪は元よりご利用のソフトのバージョンまでしっかり明記することを憶えてください。
>あらたにコピーされた図形の名前を設定できますか。
モチロンできます。
基本的なコツは,貼り付けた(新たな画像がシート上に発生した)直後にさっさと名前を付けてしまうことです。
作成例:
sub macro1()
activesheet.shapes("Picture 1").copy
range("A10").select
activesheet.paste
selection.name = "Pict2"
end sub
#但し書き:今回のご相談とは全く無関係の部分で
ご相談のようなヤリタイ事で,現実に大概問題になるのは「一体どんな名前にしたらイイ」のか,少なくともエラーが起きないマクロを書けるかという部分です。
もうちょっと作業を進めた後,必要に応じてまた別途ご相談を投稿してみてください。
すばやい回答有難う御座います。
<<直後にさっさと名前を付けてしまうことです。
なるほど、作った直後のセレクトされている内なら出来るということですね。
できるオブジェクトの名前を直接つけるのはできないんですね。
有難う御座います。
No.2
- 回答日時:
私はShapeのRectangle 1でやったのですが
シートSheet1に図形の長方形を1つ作っておく。
標準モジュールに
Sub Macro4()
Worksheets("Sheet1").Shapes("Rectangle 1").Copy
'Selection.Copy
ActiveSheet.Paste
Selection.Name = "aaa"
End Sub
を実行する。
コピーして貼り付けた直後の段階で、その図形がSelectされているので、間髪を入れず(他の操作が入らない段階で、ただプログラム実行中は普通は入らない)Selectionを使って取り出し(=オブジェクトを掴んで)、名前をつけてしまう。
ーー
確認用に
標準モジュールに
Sub test01()
For i = 1 To Worksheets("Sheet1").DrawingObjects.Count
MsgBox Worksheets("Sheet1").DrawingObjects(i).Name
Next i
End Sub
を作って、前記の貼り付け実行後、こちらを実行すると、「指定した名前で、長方形が増えている」ことがわかると思う。
ーーー
この辺は私にとっては難しい(すっきりしない)点で、別のコードの書き方があるようにも思うが、今すぐは出てこない。
エクセル・バージョンによっても変わる恐れがあるように思う。
すばやい回答有難う御座います。
確認用も分かりやすく参考になりました。
<<間髪を入れずSelectionを使って取り出し名前をつけてしまう。
なるほど、No1さんと同様ですか。作っては消すということを繰り返すようなエクセルシートだと
コピーした瞬間にできるオブジェクト名の数字がどんどん膨れ上がりますね・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。 5 2022/11/20 09:48
- Excel(エクセル) 【VBA】エクセルで選択した範囲の値のみをクリップボードにコピーするコードについて 3 2023/03/08 17:41
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/26 13:19
- Visual Basic(VBA) VBAマクロ 決まっていない行を選択して別シートへ貼付け 4 2023/02/16 16:08
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/06/02 08:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
このQ&Aを見た人はこんなQ&Aも見ています
-
VBAでセルを指定した画像のコピー&ペーストを繰り返したい
Excel(エクセル)
-
エクセルVBA 画像を貼り付けるセル位置を指定する方法
Excel(エクセル)
-
エクセルvbaでの図形のカット(コピー)ペーストについて
Excel(エクセル)
-
-
4
VBA 同じ名前のオブジェクトを選択したいのですが
Visual Basic(VBA)
-
5
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
6
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
7
エクセルマクロでシート内にある画像のみを選択する
Excel(エクセル)
-
8
エクセルVBA 図形の選択法は?
Visual Basic(VBA)
-
9
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
10
【EXCEL VBA】オートシェイプをクリックした時にそのオートシェイプの名前を取得したい
Visual Basic(VBA)
-
11
【VBA】3個の図形をコピーしてSheet2に貼り付けたい
Excel(エクセル)
-
12
vba クリップボードクリアについて教えてください
その他(プログラミング・Web制作)
-
13
エクセルVBAで画像を貼り付ける座標設定方法は?
PowerPoint(パワーポイント)
-
14
EXCEL VBA オートシェイプナンバーのリセット
Visual Basic(VBA)
-
15
Excel 2010マクロで挿入した画像に名前が付けられない!
その他(Microsoft Office)
-
16
Excel vbaについての質問
Visual Basic(VBA)
-
17
特定の名前のオートシェイプの有無を知りたい(エクセルVBA)
Excel(エクセル)
-
18
Excel VBAでセル内の画像を選択したい
Excel(エクセル)
-
19
【VBA】写真の縦横比を変えずに貼り付ける
Visual Basic(VBA)
-
20
VBAによるセル内の画像の位置調整
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelでマクロ実行中に画面を固...
-
エクセルファイルを値でのみし...
-
VBA Shapes コピーと名前
-
エクセル マクロ写真帳に一括で...
-
エクセル連番自動印刷について
-
EXCEL VBA 他のアプリケーショ...
-
セルに入力するたびにマクロを...
-
エクセルファイルの回数期限の...
-
【Excel】マクロでページを追加...
-
秀丸で文字列範囲を選択したら...
-
再度,ExcelVBA,public変数が消える
-
VBAの記述について 値のみの貼...
-
ExcelのVBAで自動採番したい...
-
【ExcelVBA】マクロブックを通...
-
エクセル 図形の寸法を取得したい
-
VBAで保存しないで閉じると空の...
-
WPSOffice_マクロの有効化について
-
複数のマクロボタンをまとめて...
-
Excel マクロの編集がグレーに...
-
エクセル関数>参照ファイル名...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルファイルを値でのみし...
-
VBA Shapes コピーと名前
-
Excelでマクロ実行中に画面を固...
-
エクセル マクロ写真帳に一括で...
-
セルに入力するたびにマクロを...
-
エクセル連番自動印刷について
-
【Excel】マクロでページを追加...
-
エクセル 図形の寸法を取得したい
-
EXCEL VBA 他のアプリケーショ...
-
エクセルファイルの回数期限の...
-
VBAで行コピーして挿入
-
エクセルVBAで納期管理システム...
-
ブックの共有でVBAエラー
-
【ExcelVBA】マクロブックを通...
-
VB.NETによるEXCELの行挿入
-
再度,ExcelVBA,public変数が消える
-
worksheet_changeの一時無効化
-
EXCEL 行番号や列番号が選択で...
-
マクロで非表示シート内にある...
-
EXCEL上にコマンドボタン...
おすすめ情報