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

こんにちは。
仕事上でのエクセルファイル作成に行き詰ってしまったので、お知恵を拝借させて下さい。

今回作成しているファイルは、
Sheet1にはお客様に送付する宿泊確認書のフォームが、
Sheet2にはお客様の情報(名前、Tel番号など)が
入力されています。

理想としては、Sheet2に入力したデータを
Sheet1のフォームに自動反映させたいのです。

単純にSheet2からSheet1にデータ反映する方法は
分るのですが、
この場合はSheet2に数百名のお客様データが入っている為、
「Sheet2の36行目のお客様分の確認書を作成したい」時の方法が分りません。

例えば、Sheet1確認書フォームの各セルに
Sheet2の列を指定しておいて、
Sheet2のどの行から情報をひっぱってくるのかを
Sheet1にてその都度設定する事は可能でしょうか?

何卒よろしくお願い致します。

A 回答 (2件)

Sheet2の第15行の


A列(A15)を引っ張ってくるのは、例えばSheet1のB2に持ってくるなら、A1(たとえば)に15といれ、
B2セルに
=INDIRECT("Sheet2!A"&$A$1)
Sheet2のB15をSheet1のC4に出したいときは
=INDIRECT("Sheet2!B"&$A$1)
です。
この15に当たる数字を、VBAで連続(または指定分)変化させて、毎番号ごとに帳票範囲.PrintOut メソッドを実行するようにすると、帳票式の印刷物が多数枚自動作成できます。
印刷のマクロの記録をとって印刷のVBAの大枠を知り、上記15に当たる数字をVBAで変化させる方法・指定する方法を勉強してみてください。
    • good
    • 0

こんにちは。


Sheet2のお客様の情報に重複しないキーになる
番号や情報が在りますか?

在れば検索系の関数で表示出来ます。

この辺↓を参考にしてみてください。

検索/行列関数(VLOOKUP関数)

参考URL:http://www.kenzo30.com/ex_kisotyu/ex_ks_tyukyu9_ …
    • good
    • 0

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