アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルでデータベースというのか社員番号、氏名、生年月日、住所等 社員ごとに一行ずつ入っています。これを一人1枚の社員台帳を作ることしました。
たとえば、社員番号を入れるとデータベースを元にして、すべて自動的に入るように設定したいのですが、どう設定すればいいのでしょうか?宜しくお願いします。

A 回答 (3件)

Sheet1のA1:C5に、データベース・住所録があるとします。


番号氏名    住所
11山田 一郎横浜市
12近藤 次郎中野区
13相田 三郎三鷹市
14大岡 信夫国立市
Sheet2が社員個人カードとして
A1:D5に
社員カード

番号11氏名山田 一郎

住所横浜市
番号をB3セルに入れると、D3に住所、D5に住所が入るようにするものとします。
D3に関数=OFFSET(Sheet1!$A$2,MATCH(B3,Sheet1!$A$2:$A$10,0)-1,1)
D5に関数=OFFSET(Sheet1!$A$2,MATCH(B3,Sheet1!$A$2:$A$10,0)-1,2)
と入れる。Sheet1の
B列を持ってくる->Offset関数の最後の引数が2
C列を持ってくる->Offset関数の最後の引数が3
D列を持ってくる->Offset関数の最後の引数が4
(本例では省略)と変化させます。
B3に番号が入れてない時のエラー表示を出さない対策は
略(既回答#2等をご参考に)。
印刷を自動化したいところですが、VBAを使わないと
関数では出来ません(略)。
    • good
    • 0

例えばSheet1がデータベース、Sheet2が社員台帳とします。


Sheet1について
A列から社員番号、氏名、生年月日、住所、1行目が見出しとし、仮にA2:D10の範囲をデータ入力欄とします。
Sheet2について
A1を社員番号入力欄、B1:D1を氏名、生年月日、住所表示欄とします。

以上の条件で
B2に
=IF($A$1="","",IF(VLOOKUP($A$1,Sheet1!$A$2:$D$10,2,FALSE)=0,"",VLOOKUP($A$1,Sheet1!$A$2:$D$10,2,FALSE)))
B3に
=IF($A$1="","",IF(VLOOKUP($A$1,Sheet1!$A$2:$D$10,3,FALSE)=0,"",VLOOKUP($A$1,Sheet1!$A$2:$D$10,3,FALSE)))
B4に
=IF($A$1="","",IF(VLOOKUP($A$1,Sheet1!$A$2:$D$10,4,FALSE)=0,"",VLOOKUP($A$1,Sheet1!$A$2:$D$10,4,FALSE)))
と入力します。(空欄がある場合のエラー、ゼロ表示への対処を含んでいます)

なおVLOOKUP関数に関しては下記を参考にして下さい。
http://www.atmarkit.co.jp/fwin2k/win2ktips/317vl …

参考URL:http://www.atmarkit.co.jp/fwin2k/win2ktips/317vl …
    • good
    • 0

VLOOKUP関数を使います。



詳しくはヘルプを参照してください。
    • good
    • 0

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