
いつもお世話になっております。
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 関数を使ってデータと一...
-
EXCELのVBAでシートコピーをし...
-
Excel シートのコピーの際、ペ...
-
Excel 複数 シートコピー 同...
-
EXCELで別のブックから式をコピ...
-
ExcelのBook内のシートを一枚だ...
-
エクセルのシートコピーした際...
-
祭の祝儀 掲示・集計ソフト
-
1ヶ月分の日付を一度に出す方法...
-
Nintendo Switch 2 キャリング...
-
エクセルファイルを開く時、常...
-
VBA シート名を先月の名前に...
-
エクセルの関数 ENTERを押...
-
vba Listviewでのチェックボッ...
-
エクセルで複数のシートの1枚目...
-
VBAマクロで作成した新規ブック...
-
複数シートからデータを拾って...
-
WorkBooksをオープンさせずにシ...
-
マクロで印刷→セルの値から部数...
-
EXCELの図形(テキストボックス)...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの選択範囲以外を削除...
-
Excel 関数を使ってデータと一...
-
EXCELのVBAでシートコピーをし...
-
Excelの行をコピーして貼り付け...
-
EXCELで別のブックから式をコピ...
-
エクセルでシートを「移動また...
-
【エクセル】プルダウン設定の...
-
エクセルの1シートの内容を複...
-
EXCEL2007でシートをコピーする...
-
Excel シートのコピーの際、ペ...
-
ページの設定を別シートにコピ...
-
CSVファイルについて質問です。
-
エクセルのワークシートをUSBメ...
-
PDFファイルをコピーしてエクセ...
-
エクセルシートを別のエクセル...
-
Excel 数式の保護をしたセルを...
-
ExcelVBAで、ユーザーフォーム...
-
【VBA】コピー&複数個所のペー...
-
エクセルのシートコピーした際...
-
VBA シートをコピー後、ボタン...
おすすめ情報