いつもお世話になっております。
ExcelのVBAで、application.inputboxで他のブックを選択したいのですが、どうも出来ません。下記のコードを実行して、InputBoxで、他のブックのセルを指定したいのですが、どうも現在開いている他のブックをマウスでクリック出来ないのです。
下記のコードは、『選択範囲を、InputBoxで指定した先にコピーしたい』という意図から、まずは、Msgboxに表示してみることにしたものです。
これは、何故なのでしょうか?
ご教示下さい。
'rngOriginalを、rngCopyToにコピーします。
Sub Test()
Dim rngOriginal As Range
Dim rngCopyTo As Range
Set rngOriginal = Selection.Cells
Set rngCopyTo = Application.InputBox("コピー先を選択してください", , , , , , , 8)
With rngOriginal
MsgBox .Parent.Parent.Name & " " & .Parent.Name & "!" & .Address(, , Application.ReferenceStyle)
End With
With rngCopyTo
MsgBox .Parent.Parent.Name & " " & .Parent.Name & "!" & .Address(, , Application.ReferenceStyle)
End With
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは。
メニュー[ウィンドウ]でBookを切り替えるか、[整列]を使えば選択できます。
または下記の要領で。(エラー処理いれてません)
Sub Test2()
Dim rngOriginal As Range
Dim rngCopyTo As Range
Set rngOriginal = Selection
Application.Dialogs(xlDialogActivate).Show
Set rngCopyTo = Application.InputBox("select", Type:=8)
MsgBox rngOriginal.Address(external:=True)
MsgBox rngCopyTo.Address(external:=True)
'rngOriginal.Copy rngCopyTo
End Sub
おかげさまで解決することが出来ました。素早い、的確な解説を頂き、深くお礼申し上げます。
VBAの知識を深める機会となりました。
本当にありがとうございました。
No.2
- 回答日時:
Application.Inputboxの前で、他のブックをアクティブにしておけばいいのでは?
'------------------------------------------------
Sub Test()
Dim rngOriginal As Range
Dim rngCopyTo As Range
Set rngOriginal = Selection.Cells
●●●Workbooks("他のブック.xls").Activate
Set rngCopyTo = Application.InputBox("コピー先を選択してください", , , , , , , 8)
With rngOriginal
MsgBox .Parent.Parent.Name & " " & .Parent.Name & "!" & .Address(, , Application.ReferenceStyle)
End With
With rngCopyTo
MsgBox .Parent.Parent.Name & " " & .Parent.Name & "!" & .Address(, , Application.ReferenceStyle)
End With
End Sub
'-------------------------------------------
外しましたらご容赦願います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Visual Basic(VBA) ファイル名の右側を変更したい ファイル名:「1001日別売上」の左側へ「2022」を追加し、「202 6 2022/10/14 10:03
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 関数を使ってデータと一...
-
【エクセル】プルダウン設定の...
-
エクセルの選択範囲以外を削除...
-
Excelの行をコピーして貼り付け...
-
Excel シートのコピーの際、ペ...
-
エクセルで、開くのに時間のか...
-
エクセルのファイルで、あるブ...
-
EXCELのVBAでシートコピーをし...
-
PDFファイルをコピーしてエクセ...
-
エクセルのワークシートをUSBメ...
-
エクセルで別のブックにワーク...
-
Excel 2013 書式コピーについて
-
excelでボタン一つでシートから...
-
【Excel】数式をそのまま他のシ...
-
シートのコピーでリンク先をコ...
-
Excel マクロ抽出、別シートに...
-
excel表のコピー時、列・行幅も...
-
EXCELファイルをコピーすると終...
-
コピー後に値のみ貼り付け エ...
-
エクセルでページごとにシート...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの選択範囲以外を削除...
-
Excel 関数を使ってデータと一...
-
EXCELのVBAでシートコピーをし...
-
EXCELで別のブックから式をコピ...
-
【Excel】数式をそのまま他のシ...
-
【VBA】コピー&複数個所のペー...
-
Excelの行をコピーして貼り付け...
-
【エクセル】プルダウン設定の...
-
エクセルのワークシートをUSBメ...
-
Excel シートのコピーの際、ペ...
-
エクセルVBA 1行飛ばしで転記す...
-
エクセルの1シートの内容を複...
-
【Excel VBA】シートコピー時、...
-
エクセルシートを別のエクセル...
-
ExcelVBAで、ユーザーフォーム...
-
エクセルでシートを「移動また...
-
Excel シートに別のExcelシート...
-
Excel 数式の保護をしたセルを...
-
EXCEL2007でシートをコピーする...
-
シートが保護されていないのに...
おすすめ情報