みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【エクセルVBA】ドロップダウンリストに項目追加→他のファイルにも自動的に項目追加がしたい

やりたいことが難しそうなので、できないかもしれませんが、
もしかしたらと思い投稿しました。
まず、エクセルファイル「book1.xls」「book2.xls」「マスター.xls」
を用意します。
どのファイルにもA1~A5に東京、神奈川、千葉、埼玉、茨城と
入力したとします。このA1~A5に都道府県という名前を付けます。
B1にはドロップダウンリストをつくり、都道府県と名づけたセルの内容
が選択できるようにします。
   A    B
1 東京 ドロップダウンリスト
2 神奈川
3 千葉
4 埼玉
5 茨城
ここで「マスター.xls」のA6に栃木と入力し、A1~A6の名前を都道府県
に変更したとします。この時B1のリストの項目は5から6に増えています。
私がやりたいのは、上記のように「マスター.xls」を変更したとき、
「book1.xls」「book2.xls」にも自動的に同様の変更がおこるように
したいのです。
ファイルが3つだったら1つずつ直せばよいですが、実際に私がやろう
としているのは50個くらいあるので、1つずつ直すのは手間がかかり
ます。そこで、1つのファイルのドロップダウンリストの項目を変更
すると他のファイルも同様に変更が加わるような仕組みをつくりたい
のです。
どのような方法でもかまいませんが、マクロを使うなら、
入力すべきコードを正確に教えてください。
よろしくお願いします。

投稿日時 - 2009-05-11 20:57:50

QNo.4950821

すぐに回答ほしいです

質問者が選んだベストアンサー

>「マスター.xls」を変更したとき、「book1.xls」「book2.xls」にも自動的に同様の変更がおこる...
ではなく、「book1.xls」「book2.xls」を開いた時に「マスター.xls」の最新データを取り込む、
でいいんじゃないでしょうか。
[外部データの取り込み]を使って、マクロも不要な仕様です。

最初に「book1.xls」「book2.xls」...各ファイルを作成する時に仕込みます。
http://www.eurus.dti.ne.jp/~yoneyama/Excel/filter2.htm
ここを参考に、各ファイルに対して、[外部データの取り込み]で「マスター.xls」のマスターシートの
A列だけを取り込む設定をします。

その時、[外部データ範囲のプロパティ]で『ファイルを開くときにデータを更新する』にチェックを入れておけば
各ファイルを開いた時に「マスター.xls」の最新データを取り込む事ができます。

[外部データの取り込み]を設定した範囲はデフォルトで[Excel Files からのクエリ]という名前がつきますから
入力規則のリストに
=Excel_Files_からのクエリ
と設定すれば良いです。

投稿日時 - 2009-05-11 22:47:52

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問