プロが教えるわが家の防犯対策術!

エクセル 別のファイルにデータを流し込む方法


エクセルで、1つのファイルに入力してあるデータの内、
特定の行のデータを指定して、別のファイルに体裁(レイアウト)を変えて
表示させる方法を教えてください。

具体的には、例えば、元データのファイル(仮にBook1)が、
列に、A列-日付、B列-時間、C列-利用場所、D列-顧客番号、
E列-顧客氏名、F列-利用内容、G列-判定
というような項目を並べて、
1行ずつ、データが入力してあるファイルがあるとします。

この元データのファイルを利用して、別のファイル(仮にBook2)、
例えば、FAX送信用の紙のような書式のファイルに、
1枚の紙に、1人分のデータを、
流し込んで表示させるようなことをしたいと思っております。

これを、Book2の1個1個のセルに、元となるBook1のセルを参照するよう
いちいち入力するのではなく、
Book1の特定の1行を指定すれば、その行に入力してあるデータが
自動的に(一発で)Book2のシートに反映されるようにしたいのですが、
良い方法がありますでしょうか。

ご存知のかたがいらっしゃいましたら、
お教えいただけると嬉しいです。

どうぞよろしくお願い申し上げます。

A 回答 (3件)

Sheet2のA1に例えば 10 と数字を入れて


Sheet2の各所のセルに
 =INDEX(Sheet1!A:A,A1)
 =INDEX(Sheet1!B:B,A1)
 =INDEX(Sheet1!C:C,A1)
 =INDEX(Sheet1!D:D,A1)
のように数式を配置しておけば,A1に入れた数字の行のABCD列のデータを即座に表示させる事ができます。

B1セルに「顧客番号」(一連のデータを識別できるユニークな値)を記入することにして
A1セルに =MATCH(Sheet1!D:D,B1,0) のように式を入れ,顧客番号が何行目にヒットするか計算させて前述の式で各行のデータを取ってこさせるような仕込みにするような方法もあります。
勿論恐らく今回の実際のデータでは「顧客番号」はユニーク値ではありませんが,実際のデータに照らして工夫し,VLOOKUP関数などで各行のデータを取ってこさせたりします。
    • good
    • 0

Book1の特定セルをクリックするとという事であればマクロの利用になります



行番号やユニークな情報(顧客番号等)の入力を行ってという事であれば
Book2の表示セルにindex関数等で呼び出すことは可能かと思います。
    • good
    • 0

VBAを使わないと無理かと思います



配列にデータを格納してデータを転記といった
手法です 
    • good
    • 0
この回答へのお礼

早速ご回答いただきありがとうございます!

思っていたより難しそうなんですね。

他の手段を考えてみます。

ありがとうございました。

お礼日時:2010/04/15 11:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています