[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『アクティブウインドウ以外の選択』(さかな)
マクロを使用しているのですが、2つのファイルを開いていたとして、ファイル名を指定せずに、アクティブでない方のファイルを選択することは、可能ですか?
ファイル名を指定しないというのは、片方のファイルはマクロが登録されていて、ファイル名は固定されているのですが、もうひとつのファイルは状況に応じていくつかのパターンの中から選択してひとつを開くので、名前を指定せずにアクティブにしたいのです。
よろしくお願いします。
IIf(Workbooks(1).Name = ActiveWorkbook.Name, Workbooks(2), Workbooks(1)).Activate
(通りすがりの者)
1. workbooks.open "?.xls" ファイルを開きます。
2. Dim NewBookName As string
NewBookName = ActiveWorkbook.name
開くとアクティブになるので、ファイル名を変数に格納します。
3.Workbooks(NewBookName).worksheets("sheet1")・・・
以後は、このようにブックを指定できます。
こんな感じでいかがでしょうか?(INA)
>我流のValk さん
ファイルは2つと決まっているようですので、ActivateNextの方が適切な回答でしたね。
失礼いたしました。
>WorkBooks.Open・・・で開くのであれば、ファイル名がわかる場合もしくは指定
>できる場合ではないでしょうか?
以下のような場合を、想定していました。(勘違いです。すいません。)
ファイル = Dir("*.xls")
Do While ファイル <> ""
If ファイル <> ThisWorkbook.Name Then
Workbooks.Open Filename:=ファイル
End If
ファイル = Dir()
Loop
(INA)
そうですね。ActivateNext がありました。この方が同じ1行とはいえ、ぼくが紹介 したものより、はるかにスマートです。
activewindow.ActivateNext
これだけでいいし、何度でも使えます。ありがとうございました。(通りすがりの者)
色々教えていただきありがとうございました。 ほとんど何もわからずにあれこれ手探りでやっている状態なので、大変参考になりました。 これからチャレンジしてみたいと思います。 ありがとうございました。 (さかな)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.