• 締切済み

エクセルで集計方法

エクセルで次のような集計をすることはできるでしょうか?出来るのでしたらどうしたらよろしいでしょうか。 エクセル2000を使っています。 A列に顧客番号、B列に担当者名(当社の)、C列にその顧客先に、メンテ・保守等で訪問した日があります。 この表を入力したままの状態でしたら同じ顧客先に違う日に何回も訪問すると、A列に同じ顧客番号が存在するようになります。 これを月ごとにまとめて、さらに同じ顧客先の訪問したら、C列の訪問日のセルに2日、3日分まとめて表示することは出来ないでしょうか。(たとえば、11月4日と11月7日、11月12日・・・に訪問していたら、1つのセルに11/4、11/7、11/12…と表示させる方法)

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

多分VBAを使う問題になると思います。 処理ロジックは下記が良いでしょう。 (1)ボタンでも1つ貼りつける。このボタンをクリックすると下記の作業を自動的に行う。 (2)全行を顧客番号でソートする。すると同じ得意先は行が隣接して固まります。 (3)同一得意先行の最初の行を残し、同じ得意先の2番目以後の行は訪問日を第1行に残して(追加して)、行は削除する。 (4)そのためには今注目している行と直前の行を比較して、同じときは(3)の処理を、違う(変った)時は次行にすすむ。 15行ぐらいのVBAのコードになるでしょう。

Phoenix0123
質問者

補足

VBAがよくわからないので、プロシージャーもいっしょに教えていただけたらうれしいです。

  • Taketoshi
  • ベストアンサー率41% (23/56)
回答No.1

ピボットテーブルを使うのは、だめでしょうか。  A    B    C    D 1 顧客番号 担当者名 訪問内容 訪問日 2 A001   赤星   メンテ  1月1日 3 A002   今岡   保守   1月3日 4 A001   赤星   メンテ  1月3日 5 A001   赤星   保守   1月4日 6 A002   今岡   保守   1月15日 7 A003   金本   メンテ  1月30日 とした場合、以下のようにピボットテーブルを作成します。 (1)F1を選択←あいているとこならどこでもOK (2)データ-ピボットテーブル レポートを選択 →ピボットテーブルウィザードを表示 (3)Excelのリスト/データベース、ピボットテーブルをチェックして、[次へ]押下 (4)範囲を、A1からD最終行までに設定し、[次へ]押下 (5)[レイアウト]押下 →レイアウトウィザードを表示 (7)[行(R)]に[顧客番号][担当者名][訪問内容][訪問日 ]をドラッグ (8)[データ(D)]に[訪問日]をドラッグ (9)[OK]押下 (10)[完了]押下 これで、顧客番号ごとの訪問日付の集計表ができます。 ピボットテーブルの詳細は、ExcelHelpを見てください。

Phoenix0123
質問者

補足

上記の方法のピボットテーブルだと、同じ場所に複数回訪問していると、行もその回数分だけ作られますよね。 例えば【A001 赤星 1/1、1/3】という感じで1行に表示させたいのですが、出来ますか?

関連するQ&A

  • 集計方法教えて下さい

    エクセルを使って集計したいので教えて下さい。 まず、シート”あ”のセルA1に9/1セルA2に9/2セルA3に9/3・・・・という風に日付が順番に延々入力されています。その隣の列( B,C,D・・・)にはその日使った金額が入っています。使った都度隣のセルに入力していきますので、ある日はB列だけ金額が入っている、またある日はB列から列Fまで金額が入っています。というように支払う毎に隣のセルに入力していきます。 集計シート”い”を用意して、そのシートのA1に9月、B1に10月、C1に11月・・・といったようにその月毎の集計金額を表示させたいのです。SUM関数を使って手動でセル範囲を選択しても良いのですが、なんとも芸の無い感じがするのでもっと簡単に出来ないでしょうか? 例えば、シート”あ”のA列全体を選択し、その中で9/1~9/30までの条件範囲でその隣にある金額を集計する。 あとは、その計算式の入っているセルの角をマウスでドラックしてビューとすれば、出来上がり。 わかる方教えて下さい。

  • エクセル シート間の集計について

    エクセル(2007)で複数のシートを集計したいです。 行には顧客名、列には売上げやコストなどの数字が入っています。 1月~12月のシートがあり、集計シートにはその合計数字が入るようにします。 月によって顧客名が増えたり減ったりするので、各シートの同じセルに同じ顧客名があるわけではありません。 こういう場合、集計することができるのでしょうか? どのような手順でやればよいのでしょうか?

  • エクセルでの集計で悩んでます。

    エクセルでの集計で悩んでます。 (サンプル) ●番号・出荷先・入荷先がB列・F列・H列に次のように並んでいます。     B列  F列  H列 ( 4行目) 番号  出荷先 入荷先 ( 5行目) (空欄) (空欄) (空欄) ( 6行目) 1  A  あ ( 7行目) 1  A  あ ( 8行目) 1  B  あ ( 9行目) 2  A  い (10行目) 2  A  あ (11行目) 3  B  う (12行目) 4  B  お (13行目) 4  C  お (14行目) 5  A  あ (15行目) 5  A  あ ※全部で5,000行くらいあります。 (直送マスタ) ●Y列~AA列に「直送マスタ」があります。        Y列   Z列   AA列 (4行目)  直送マスタ (5行目)  出荷先 入荷先 距離 (6行目)  A    あ    10 (7行目)  A    い    20 (8行目)  A    う    30 (9行目)  B    あ    40 (10行目) B    い    50 (11行目) B    う    60 (12行目) C    あ    70 (13行目) C    い    80 (14行目) E    う    90 ※200行くらいあります。 (混載マスタ) ●AB列~AH列に「混載距離マスタ」を作成しています。        AB列   AC列   AD列   AE列   AF列   AG列   AH列 (4行目)  混載マスタ (5行目)  出荷先1 出荷先2 出荷先3 入荷先1 入荷先2 入荷先3  距離 (6行目)  A     B            あ                    100 (7行目)  A     C            あ      い     う       110 (8行目)  A                  あ      い             120 (9行目)  B     C            お                    130 ※100行くらいあります。 ※1つの番号に対して「発場所」もしくは「着場所」が2つ以上あるものが混載です。 ※番号は車輛の番号であり、(サンプル)の「3」番「5」番のように1箇所の出荷先に 対して入荷先も1箇所の場合は「直送」で「1」番「2」番「4」番は混載となります。 (1)こういった情報をもとに、W列に混載の合計距離を出したいと思っています。 (サンプル)の例で考えると、 セル「W6」に混載マスタを参照して「100」と表示 セル「W9」に混載マスタを参照して「120」と表示 セル「W12」に混載マスタを参照して「130」と表示 といったようにB列の番号が変わる度にW列に混載の距離が出力されるような関数を設定したいのですが、 教えていただけないでしょうか? (2)直送マスタは別の関数を設定して何とか表示できているのですが、 セル「W11」に直送マスタを参照して「60」と表示 セル「W14」に直送マスタを参照して「10」と表示 といったように、直送の距離も混載の距離と合わせて表示できるようなマクロを教えていただけないでしょうか。

  • エクセルVBAで、二次元集計を行う方法

    A列      B列      C列 「日付」  「売上」  「商品番号」 1月10日   12,000    1AD 1月10日   12,000    1AD 1月18日    5,000    5AC 1月20日   12,000    1AD 1月21日    8,000    3BA         ・         ・         ・ のようなシートがあります。データ数は、60,000行以上 あります。これを日付と商品番号の2段階でソーティングして、次のような集計表をいかに簡単に作れるか考えています。 A列     B列     C列    D列       「1AD」   「3BA」  「5AC」 1月01日   1月02日            ・            ・            ・ 1月18日            ・            ・            ・ 各セルには、それぞれ日付/商品番号ごとの平均値が 入るようにしたいのですが、自身で色々探しましたが、 なかなか良いアイデアがえられませんでした。 そこで、どなたかご存知の方がおられましたら、 回答お願い致します。

  • エクセル2003の集計で

    エクセル2003の集計で セルA列にコンマ区切りで数値が入っているのですが これをセルB列でで集計することってできますか? A列の数値の数はバラバラです このような感じです↓ A1 1,2,3 B1 6 A2 2,3 B2 5 A3 9,1,7 B3 17 よろしくお願いします

  • エクセルでの集計

    エクセルで、たとえば 列1            列2 さくら会社 Aさん    8月30日 もみじ会社 Bさん    9月1日 あやめ会社 Cさん   9月2日 さくら会社 Dさん    9月4日 もみじ会社 Bさん   9月10日 というデータがあった時に、 さくら会社   2 もみじ会社  2 あやめ会社  1 かえで会社  0 という数字を集計したいと思います。 問題は、データの列1に会社名と担当者名が同じセルに入っているのですが、担当者が違っても同じ会社ごとに集計することが可能でしょうか。 よろしくお願いします。

  • エクセルのデーター集計

    エクセルのデーター集計について教えて下さい。 データーを集計する為、エクセルの データー → 集計 でデーターを集計すると項目毎の金額の列の下に合計が表示され、総計が同じく金額の列の一番下に表示されるといった形だと思いますが、(下記のように) A  1000 A  1000 A  1000 計 3000 B  1000 B  1000 計 2000 C  1000 C  1000 C  1000 計 3000 総計8000 この計及び総計を隣の列にくるようにはできないのでしょうか?宜しくお願いします。

  • Excelで作業時間の集計

    Excelの集計で質問です。 システム保守を行っているのですが、ユーザーごとにどんな方法(電話対応、現地訪問、遠隔操作)でどれ位の時間作業したかをシートに記入しています。 内容は以下のようになっています。 A列      B列    C列                 D列 ユーザー名 作業内容 対応方法(電話、訪問、遠隔) 時間 これがシステム別に複数シートあります。 これを集計表として1シートにまとめたいと思っています。 集計内容は「ユーザー別対応方法別の回数及び作業時間」です。 A列       B列    C列  D列    E列  F列   G列 ユーザー名 電話回数 時間 訪問回数 時間 遠隔回数 時間 といった具合です。 これをExcelで行うことは可能でしょうか?よろしくお願いします。

  • 【Access】特定の顧客のみ集約して集計する

    Access2010で下記のような条件で集計をしたいと思っています。 ------------------------------- テーブル1 フィールド(1):顧客番号 フィールド(2):売上金額 フィールド(3):売上月 001/100円/1月 002/ 50円/1月 003/200円/1月 004/150円/1月 テーブル2 フィールド:(1)顧客番号 フィールド(2)集約先(顧客番号) 001/002 002/003 ★完成クエリ フィールド(1)顧客番号(集約) フィールド(2)売上金額 フィールド(3)売上月 003/350円/1月 004/150円/1月 ------------------------------- 顧客番号ごとの売上金額を集計しますが、 その際、集約先を持つ顧客番号については、 集約先を参照し、顧客番号(集約)という括りで集計したいと思っています。 Excelだと、IF関数を使って「もし集約先セルが空欄なら顧客番号を参照してコピーする」等して、 顧客番号(集約)の列で括って集計する、と考えたりできるのですが、 Accessは不慣れなこともあって、なかなか良い方法が思いつきません・・・。 どうか集計方法をご教授いただけないでしょうか。 よろしくお願いします。

  • エクセルの列単位の集計方法について

    教えてください。 エクセルで列単位に集計し、それを一覧で表示するにはどうしたらいいですか? ピポッドテーブルでやろうとしたのですが、うまくいきませんでした。。。 例) 1列目 A B B C A 2列目 あ い う え お 3列目 A C B B C というばあいに、 1列目と3列目を以下のように集計し結果を表にしたいです。      A   B   C 1列目 2   2   1 3列目 1   2   2 ピポッドテーブルで、 1列目だけのABCの個数を表示することはできたのですが、 これを他の列も同様に集計して同じ表に結果を出したいです。 分かる方、教えてください!!   

専門家に質問してみよう