エクセル2003で納品書を書き、件数分シートに保存したファイルがあります。

納品書の項目は全てのシートで同じ内容です。以下の項目を別のエクセルファイルに、集計する。

1.[受注日]
2.[お客様名]
3.[受注日]から[納品日]までにかかった日数
4.[受注額]
5.[受注額]が9,000円未満のものを「△」、9,000円以上のものを「○」と表示

以上のセルの項目が、別のエクセルファイルの一件ごと1行に入る。入るタイミングは、ボタンでも、元ファイルの保存時でも、構いません。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/08/01 18:10:05
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント125pt

http://d.hatena.ne.jp/kazuki2life/20081212/1229081218

こちらのようにして ブックをリンクさせたらいかがでしょうか?

更新タイミングは その作成したブックを開くタイミングです。

id:surippa20

ご回答ありがとうございます。別のファイルを作成し、そこの1行目に項目が入るようになりました。

1件目は1行目に入りました。シートを保存して2件目を入力しますと作成しました別のファイルの2行目に入るようにおこなう形の場合はどうなりますでしょうか

2013/07/31 10:17:49
id:taknt

2件目も2行目に入るようにしたいならば、その2行目にも同様なリンクを記述すればいいだけです。

なので 全行分リンクを記述しておけば、何行になっても大丈夫です。

なお、ほかには VBAで処理するという手段もありますが
その場合は、さらに 細かい内容とか 必要になりますね。

2013/07/31 10:39:37
id:zzman No.4

回答回数299ベストアンサー獲得回数38

ポイント125pt

先についているお二方の回答でございますとハイパーリンクをいちいち入力してゆく必要が御座います。
関数をお使いになることでハイパーリンクの指定が関数を入力いたしましたセルのコピーで行えます。
納品書の一覧表だと存じますが別のエクセルファイルは一行が一件の納品に相当するものだと存じます。

例えば納品書のエクセルのファイル名・シート名・セルの位置を一覧表の外に記載いたしましてその情報を元に別ファイルのデータを表示することが可能でございます。
一覧表ではA~V列までを使われていると致しましてW~Z列に以下のように記載いたしますとZ列のセルには別のシートのデータが表示致します。

W2:エクセルファイル名(納品書1.xls)
X2:シート名(Sheet1)
Y2:セル名(D2)
Z2:=INDIRECT("["&W2&"]"&X2&"!"&Y2)

後はZ2をコピーしてZ3以降に貼りつけるのでございますがこのままではファイル名などが入力されておらなければ「#REF!」というエラーを表示いたします。
一工夫してファイル名が入力されておらなければ何も表示しないようにIF関数を組み合わせることでエラーも表示いたしません。

Z2:=IF(ISBLANK(W2),"",INDIRECT("["&W2&"]"&X2&"!"&Y2))
  • id:Silvanus
    納品書の仕様(どこのセルにどの項目の内容が記入されているか)が判らないと
    答えようが無いと思うのですが…。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません