• ベストアンサー

Excel2003で、元ファイルから並び替え条件を変えた2個のファイル

Excel2003で、元ファイルから並び替え条件を変えた2個のファイルがあります。元ファイルを修正した際、その結果を他の2個のファイルに反映させる方法が在りますでしょうか?現在は作業が終わり次第、他のファイルの並び替え条件でソートし、それぞれ上書き保存してます。具体的には、映画のリストで邦題、原題、製作年、監督、主演俳優、評価等のリストで、取り敢えず監督名、主演俳優名の空白部を埋めようとそれぞれソートしてあります。 どうぞ宜しくご教示下さい。

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

  • ベストアンサー
回答No.3

No.1です。 検索が必要な場合、色々な方法がありますが、 検索値が右側にあり、左側のデータを取り出したい場合は、 MATCH()関数が適当かと思われます。 添付の例で説明すると、 No.1ファイルで、邦題(4)の監督名(DD)を入力すると、元ファイルの邦題(4)へ 反映させる式は、 [元ファイル.xls]Sheet1!D5=INDIRECT("[No.1.xls]Sheet1!A"&MATCH(A5,[No.1.xls]Sheet1!$B:$B,0)) です。 よって、 上記式を入力後上下にフィルすれば、No.1ファイルの邦題を検索して No.1ファイルに入力された監督名が元ファイルの監督列に表示されます。 その他の列に対しても検索表示が必要であれば、 たとえば原題であれば"[No.1.xls]Sheet1!A"を "[No.1.xls]Sheet1!C"に変更するなどして下さい。 (ただ、重複する邦題がある場合は上から順に先に出てきた邦題の答えが返されますので ご注意下さい)

sapporolov
質問者

お礼

有難う御座いました。

その他の回答 (2)

回答No.2

簡単にVLOOKUP関数で実現できるはずですが、質問を理解してないかもしれませんが、 よくある質問だと想います、VLOOKUPの基本的な使い方でOKのはずです。 ただし元データの表の左端の列に 他の表にも共通の重複しないデータが 縦に並んでいる必要があります、重複や空きがなければ、順不同でOKです。 他の表では左端でなくてもOK。 一般に「商品コード」など固有のナンバーや文字が使われますが、「邦題」とかでも 重複したり、空欄がなければOKです。  VLOOKUP関数の使い方は、ネットで検索すれば、たくさん出てきます。 ネットで不可解でしたら、また補足ででも質問して下さい。

sapporolov
質問者

お礼

有難う御座いました。

回答No.1

質問者の方の作成物イメージがあまりつかないのですが、 ”元ファイルデータを他のファイルに反映させたい” という事だけを考えれば、リンクを貼れば出来るのでは と思いましたが、そんな単純な事ではないのでしょうか? コピー(1)と元ファイルを同時に開き、 コピー(1)のセルA2で”=”を入力し、 元ファイルのA2をクリックしてEnterで出来ます。 後は、”$”マークを取り除き上下左右にフィルすればOKです。 コピー(2)も同様です。 ※添付の右は、数式を表示させています。

sapporolov
質問者

補足

有難う御座いました。 元データは、邦題順に並び、No1ファイルは、1、監督名、2、邦題順に並び、No2ファイルは1、主演俳優2、邦題の順に並んでます。従って、A2の位置のデータは各ファイルは異なります。 実際の作業は、監督順に並んだファイルで監督名が空白の邦題を、映画データサイトで検索し監督名を調べ入力してます。この結果を元ファイルに反映させたいのです。自動的にコピペさせる事になるのですが無理でしょうか?或いはそれぞれの並び替え順にソートしなおし上書き保存させたいのですが、関数までで可能であればと希望してます。VBAを使わなければならないのなら諦めます。

関連するQ&A

専門家に質問してみよう