質問: vba エクセル 開いている別ファイルをアクティブにするには? すみません、よろしくお願いいたします。 <前提> a.xls=コピー元ファイル(マクロを組んでいるのはこちら) 2009・・・.xls ファイル=コピー先ファイル(2009以降はファイル名が変化しますが、必ず頭に2009があります) 同一フォルダ内に上記のファイルがあります。 どちらも開いて、aファイルのマクロを実行すると、aのデータをコピーして、2009・・・のファイルに貼りつける。としたいのですが、 (1)ファイル名が変化するので貼り付け先のファイル名をどう指定したらよいかわからない。 (2)フォルダごと、色々な人へ配る予定なので、できればアクティブなファイルという指定をしたい。(他のファイルは開いてないという前提でokです。) (3)フォルダ内には2009がつく別ファイルもあるので、(2)同様アクティブなファイルという指定をしたいです。 わかるかた、おねがいいたします。 bva初心者です。 普通のマクロで記録したら、以下のようになりました。 (例) sub macro1() ' ' macro1 macro ' ' range("a1").select selection.copy windows("20091002_2650.xls").activate '←この20091002_2650.xlsが変化します。 range("a10:b10").select activesheet.paste end sub
回答: ファイル名が変わる場合は(2つしかファイルを立ち上げていないなら)以下のようにindex番号で指定してはいかがでしょう。 windows("20091002_2650.xls").activate ↓ windows(2).activate