![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?a65a0e2)
No.1ベストアンサー
- 回答日時:
コントロールは編集モードならコピーできると思いますが、実行モードで普通にコピー&ペーストを行ってもできないと思われます。
素人の力技ですが下記マクロを作ってみました。おもしろい問題でけっこうはまってしまいました。長くなるので選択状態のチェック等は行っていません。m(_ _)m
同一シートのみで可能です。標準モジュールに貼り付けます。
ショートカットキー Ctrl+Shift+A 等に割り当てて下さい。
コピー元を選択し、コントロールキーを押しながら貼り付け先の左上セルを選択します
順番は逆でもかまいません。複数セルが含まれる矩形セル範囲と単一のセルが指定されていることが要件です。
(これは単一セルと単一セルのコピーと他シートへのコピーは対応していません。)
参考にして下さい。
Public Sub ShapesCopy()
Dim rgCopy As Range 'コピー元セル範囲
Dim rgPaste As Range '貼り付けるセル(左上)
Dim rgShape As Range 'コピー元にあるコントロールの左上セル
Dim myShape As Object '1つのコントロール
Dim rowCopy, clmCopy As Long 'コピー元の左上セルの行、列番号
Dim rowPaste, clmPaste As Long '貼り付けるセルの行、列番号
Dim disRow, disClm As Long 'コピー元と貼り付け先の行・列の隔たり
'*** 選択セルをコピー元と貼り付け先に分離 ***
With Selection
If .Areas(1).Count = 1 Then
Set rgCopy = .Areas(2)
Set rgPaste = .Areas(1)
ElseIf .Areas(2).Count = 1 Then
Set rgCopy = .Areas(1)
Set rgPaste = .Areas(2)
Else
Exit Sub '厳重なチェックは省略しています。
End If
End With
'*** コピー元と貼り付け先の隔たりを計算 ***
rowCopy = rgCopy.Cells(1, 1).Row
clmCopy = rgCopy.Cells(1, 1).Column
rowPaste = rgPaste.Cells(1, 1).Row
clmPaste = rgPaste.Cells(1, 1).Column
disRow = rowPaste - rowCopy '行の隔たり
disClm = clmPaste - clmCopy '列の隔たり
'*** コピー実行 ***
'===== セル =====
rgCopy.Copy: rgPaste.Select: ActiveSheet.Paste
'===== コントロール =====
For Each myShape In ActiveSheet.Shapes 'シート内のコントロールを探す
Set rgShape = Range(myShape.TopLeftCell.Address)
If Union(rgCopy, rgShape).Address = rgCopy.Address Then
'コントロールの左上セルがコピー元内にある場合はコピーする
myShape.Copy
Range(rgShape.Address).Offset(disRow, disClm).Select
ActiveSheet.Paste
End If
Next
rgPaste.Select
End Sub
力作をありがとうございます。
せっかく作成していただいて申し訳ないのですが、
VBAでコピー範囲を選択してペーストしたら図も一緒にペーストされました。
そのソースをいかに示します。
Dim xl As Object
xl.Application.Sheets("TEMP").Range("A1:AN34").Copy xl.Application.Sheets("DATA").Range("A" & CStr(1 + 34 * TotalPage))
これで、TEMPシートのA1:AN34をコピーして、
DATAシートのA列(1 + 34 * TotalPage)行目にペーストしました。
私は別の方法でコピー&ペーストしていたのですが、
同僚がこのロジックで図のペーストができたというので試してみたら、本当にできました。
ご迷惑をおかけしました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2023/03/12 12:16
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Visual Basic(VBA) Excel(VBA) 特定の条件に該当する行の値、書式を同じセルにコピ&ペーストしたいです 1 2022/05/21 18:18
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Evernote Simplenoteのコピー&ペースト 1 2022/05/17 14:09
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Visual Basic(VBA) vba 隣のセルに値がある行だけ関数をコピー&ペーストしたい A1 100001 A2 100002 1 2023/01/28 14:29
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) エクセルVBAコピー 2 2022/06/08 21:45
このQ&Aを見た人はこんなQ&Aも見ています
-
見学に行くとしたら【天国】と【地獄】どっち?
みなさんは、一度だけ見学に行けるとしたら【天国】と【地獄】どちらに行きたいですか? 理由も聞きたいです。
-
何回やってもうまくいかないことは?
みなさんには、何回やってもうまくいかないことはありますか?
-
今の日本に期待することはなんですか?
目まぐるしく、日本も世界も状況が変わる中、あなたが今の日本に期待することはなんですか?
-
テレビやラジオに出たことがある人、いますか?
テレビやラジオに取材されたり、ゲスト出演したことある方いますか?
-
泣きながら食べたご飯の思い出
泣きながら食べたご飯の思い出を教えてください。
-
エクセル ボタンに設定したマクロごとボタンをコピー
Excel(エクセル)
-
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
ユーザーフォームのコピー?
Excel(エクセル)
-
-
4
VBAのテキストボックスに文字列を貼り付ける方法
Access(アクセス)
-
5
ExeclVBAユーザーフォームから右クリックでショートカットメニューで困っています。
Visual Basic(VBA)
-
6
シートに張り付けたボタンがシートのコピーで消える。
Visual Basic(VBA)
-
7
excelコマンドボタンと内容を別ファイルにコピー
Excel(エクセル)
-
8
エクセルVBAでテキストボックスをコピペし、セルの右に寄せたい
Visual Basic(VBA)
-
9
VBAでセルを指定した画像のコピー&ペーストを繰り返したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセルで勝手に「折り返して...
-
エクセルで隣接していない複数...
-
Excel 行の連続データを列に参...
-
メールソフト「サンダーバード...
-
エクセルの2ページ目の作り方
-
エクセルでの行数・列数を指定...
-
Excelに、ダブルクォーテーショ...
-
Excelでコピーした行の挿入を繰...
-
エクセルで、選択範囲の数値全...
-
「選択範囲を解除してアクティ...
-
エクセルで値だけコピーして背...
-
エクセルで「コピーしたセルの...
-
エクセルのコピペでクリップボ...
-
EXCELのオートフィルの設定を変...
-
エクセルオートフィルで書式を...
-
Excel)軽いデーターのはずなの...
-
エクセル コピーしたデータを1...
-
エクセルVBA/イベント発生でコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセルで隣接していない複数...
-
エクセルで勝手に「折り返して...
-
Excel 行の連続データを列に参...
-
メールソフト「サンダーバード...
-
エクセルで、選択範囲の数値全...
-
エクセルで値だけコピーして背...
-
エクセル 別シートへのコピー...
-
Excelに、ダブルクォーテーショ...
-
エクセルの2ページ目の作り方
-
エクセルでの行数・列数を指定...
-
EXCELのオートフィルの設定を変...
-
エクセルのコピペでクリップボ...
-
エクセルで「コピーしたセルの...
-
「選択範囲を解除してアクティ...
-
Excel)軽いデーターのはずなの...
-
エクセル・数値が変化したらカ...
-
Excelでコピーした行の挿入を繰...
-
エクセル コピーしたデータを1...
おすすめ情報