エクセル2010で項目、金額等を自動振分作成する方法

このQ&Aのポイント
  • エクセル2010で項目、金額等を自動振分作成する方法について教えていただきたいです。A1のセルには「仕入先・発注先」、B1のセルには「現場名」、C1のセルには「担当名」、D1のセルには「納入日」、E1のセルには「金額(税抜)」、F1のセルには「金額(税込)」の項目があります。これらの項目を別のシートにそれぞれ「担当名」別と「現場名」別で自動振分する方法が知りたいです。
  • エクセル2010で項目、金額等を自動振分作成する方法を教えてください。私はエクセルの初心者で、自動振分がわかりません。A1のセルには「仕入先・発注先」、B1のセルには「現場名」、C1のセルには「担当名」、D1のセルには「納入日」、E1のセルには「金額(税抜)」、F1のセルには「金額(税込)」の項目があります。これらの項目を別のシートにそれぞれ「担当名」別と「現場名」別で自動振分する方法をわかりやすく教えてください。
  • エクセル2010で項目、金額等を自動振分作成する方法を教えてください。A1のセルには「仕入先・発注先」、B1のセルには「現場名」、C1のセルには「担当名」、D1のセルには「納入日」、E1のセルには「金額(税抜)」、F1のセルには「金額(税込)」の項目があります。これらの項目を別のシートにそれぞれ「担当名」別と「現場名」別で自動振分する方法を教えてください。エクセルに関して初心者なのでわかりやすく教えていただけると助かります。
回答を見る
  • ベストアンサー

エクセル2010 項目、金額等を自動振分作成したい

エクセルの初心者で自動振分がどうしてもわからないので教えていただきたいのです。 A1のセルには「仕入先・発注先」 B1のセルには「現場名」 C1のセルには「担当名」 D1のセルには「納入日」 E1のセルには「金額(税抜)」 F1のセルには「金額(税込)」 の項目を記入しています。 (1)別のシートにそれぞれ「担当名」別で自動振分を行いたいのです。 さらに、 (2)別のシートにそれぞれ「現場名」別で自動振分を行いたいのです。 上記の事をエクセルでできますでしょうか? わかる方おられましたら教えていただけますでしょうか? エクセルに関して初心者なものでわかりやすく教えていただけると大変ありがたいので 宜しくお願いします。

noname#213386
noname#213386

質問者が選んだベストアンサー

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 今仮に、元データが入力されているシートのシート名がSheet1であるものとします。  又、例えば「Aさん」という人が担当している案件のデータのみを表示するためのシートもまた「Aさん」というシート名であるものとします。  それと、適当な空きシートの中の適当な列を、作業列(補助的な計算処理を行うための関数を入力するために使用するセルの列)として使用します。  ここでは仮に、Sheet2のA列を作業列として使用するものとします。  まず、Sheet2のA1セルに次の数式を入力して下さい。 =IF(INDEX(Sheet1!$C:$C,ROW())="","",INDEX(Sheet1!$C:$C,ROW())&COUNTIF(Sheet1!$C$1:INDEX(Sheet1!$C:$C,ROW()),INDEX(Sheet1!$C:$C,ROW())))  次に、Sheet2のA1セルをコピーして、Sheet2のA2以下に(元データの行数を上回るのに充分な行数となるまで)貼り付けて下さい。(ドラグ&ドロップで行うと操作が楽です)  次に、Aさんのシートの A1セルに  担当名 A3セルに  仕入先・発注先 B3セルに  現場名 C3セルに  納入日 D3セルに  金額(税抜) E3セルに  金額(税込) という具合に、元データの項目名を入力して下さい。  次に、AさんのシートのA4セルに次の数式を入力して下さい。 =IF(ROWS($4:4)>COUNTIF(Sheet1!$C:$C,$B$1),"",INDEX(Sheet1!$A:$F,MATCH($B$1&ROWS($4:4),Sheet2!$A:$A,0),MATCH(A$3,Sheet1!$1:$1,0)))  次に、AさんのシートのA4セルをコピーして、AさんのシートのB4~E4の範囲に貼り付けて下さい。  次に、Sheet1のD2セルをコピーしてから、AさんのシートのC4セルにカーソルを合わせて、マウスを右クリックして下さい。  すると現れる選択肢の中から、「%」マークと筆の絵が一緒に描かれているボードのイラストを、選択してクリックして下さい。(書式のみをコピーするための操作です)  次に、AさんのシートのA4~E4の範囲をまとめてコピーして、Aさんのシートの5行目以下に貼り付けて下さい。  最後に、AさんのシートのB1セルに Aさん という具合に、元データに入力されている名前を入力しますと、「Aさん」が担当している案件のデータのみが自動的に表示されます。  そして、他の担当者のシートを作成する際には、Aさんのシートのコピーシートを作成して、担当者に合わせたシート名とした後、各担当者のシートのB1セルに、その担当者の名前を入力して下さい。  コピーシートの作成方法は、Excelウィンドウの下の方に、各シートのタグがありますから、コピー元としたいシートのシート名が表示されているにカーソルを合わせて、マウスを右クリックして下さい。  すると現れる選択肢の中にある[移動またはコピー]と記されている箇所をクリックして下さい。  すると「シートの移動またはコピー」ダイアログボックスが現れますから、その中にある[コピーを作成する]と記されている箇所をクリックして、チェックを入れてから、「シートの移動またはコピー」ダイアログボックスの[OK]ボタンをクリックしますと、コピーシートが作成されます。  それから、シート名が記されているタグにカーソルを合わせて、マウスをダブルクリックすれば、そのシート名を編集する事が出来ます。  尚、AさんのシートのB1セルに、次の数式 =REPLACE(CELL("filename",B1),1,FIND("]",CELL("filename",B1)),) を入力しておけば、そのシートのシート名が自動的にB1セルに表示されますから、Aさんのシートを始めとする、各担当者のシート名を、 Aさん という具合に、元データに入力されている名前と同じものとしておけば、Aさんのシートを雛形として、他の担当者のシートを作成する際に、シート名を担当者名と同じものとするだけで良いので、一々、B1セルに担当者名を入力し直す手間が不要になります。  又、AさんのシートのA4セルに入力する数式を、先述のものではなく、次の様な数式としますと、Sheet2に作業列を設けなくとも、同様の事が可能になります。(但し、元データの行数が数千行以上にもなると、以下の関数では計算処理に要するパソコンの負荷が過大になります) =IF(ROWS($4:4)>COUNTIF(Sheet1!$C:$C,$J$1),"",INDEX(Sheet1!$A:$F,SUMPRODUCT(ROW(Sheet1!$C$1:INDEX(Sheet1!$C:$C,MATCH("゛",Sheet1!$C:$C,-1)))*(Sheet1!$C$1:INDEX(Sheet1!$C:$C,MATCH("゛",Sheet1!$C:$C,-1))=$J$1)*(COUNTIF(OFFSET(Sheet1!$C$1,,,ROW(Sheet1!$C$1:INDEX(Sheet1!$C:$C,MATCH("゛",Sheet1!$C:$C,-1)))-ROW(Sheet1!$C$1)+1),$J$1)=ROWS($4:4))),MATCH(I$3,Sheet1!$1:$1,0)))

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

例えば元の表をシート1とします。 作業列としてG1セルには現場作業列、H1セルには担当作業列とでも文字列を入力します。その後にG2セルに次の式を入力してH2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(B2="","",IF(COUNTIF(B$2:B2,B2)=1,ROUND(INT(MAX(G$1:G1))+1.0001,4),ROUND(INT(INDEX(G$1:G1,MATCH(B2,B$1:B1,0)))+COUNTIF(B$2:B2,B2)/10000,4))) そこで別のシートに担当者名別や現場名ごとにシートを作成するわけですがそれらすべての表示に必要とするシートについて作業グループを設定します。例えばシート2からシート20までを作業グループに設定するのでしたらシート見出しでSheet2をクリックしたのちにShiftキーを押しながらSheet20をクリックします。又は、Ctrlキーを押しながらそれぞれのシート名をクリックしていきます。なお、作業グループを解除するためには単にシート1をクリックすればよいでしょう。 さて、このように作業グループを作成した状態ではシート2がアクティブなシートになっていますね。そこでシート2のA1セルには担当名、A2セルには現場名と文字を入力します。 C1セルには次の文字列を入力します。 「B1セルには担当者名をB2セルには現場名を入力します。ただしB1,B2セルのいづれか一方のセルは空にしてください。」 A3セルからF3セルまでにはシート1の1行目と同じ項目名を入力します。 A4セルには次の式を入力したのちにF4セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(COUNTA($B$1:$B$2)<>1,"",IF(OR(AND($B$1<>"",COUNTIF(Sheet1!$H:$H,INT(INDEX(Sheet1!$H:$H,MATCH($B$1,Sheet1!$C:$C,0)))+ROW(A1)/10000)=0),AND($B$2<>"",COUNTIF(Sheet1!$G:$G,INT(INDEX(Sheet1!$G:$G,MATCH($B$2,Sheet1!$B:$B,0)))+ROW(A1)/10000)=0)),"",INDEX(Sheet1!$A:$F,IF($B$1<>"",MATCH(INT(INDEX(Sheet1!$H:$H,MATCH($B$1,Sheet1!$C:$C,0)))+ROW(A1)/10000,Sheet1!$H:$H,0),IF($B$2<>"",MATCH(INT(INDEX(Sheet1!$G:$G,MATCH($B$2,Sheet1!$B:$B,0)))+ROW(A1)/10000,Sheet1!$G:$G,0),"")), COLUMN(A1)))) これらの入力操作が終わったら作業グループを解除します。作業グループに含まれたすべてのシートに同じ文字列や式がコピーされています。 そこで例えばシート2のB1セルに担当者名を入力することでその担当者のデータが表示されます。別のシートでB1セルに同じように担当者名を入力すればそのデータが表示されます。B2セルに現場名を入力すればその現場名でのデータが表示されます。このようにB1やB2に入力したデータ関連のシートを次々に作ることができますね。

  • tamiemon96
  • ベストアンサー率49% (658/1341)
回答No.1

自動振分の意味がつかめませんでしたが、ソートをかけて集計できればよい、ということでしょうか? 1 シートをコピーしましょう 2 コピーしたシートについて、   担当名のらんにカーソルをあわせて、ソートをかけましょう   *AZ↓のアイコンを使えばソートがかかります。 3 データ → 集計 を選択し   グループの基準   「担当名」   集計の方法      「合計」   集計するフィールド  「金額(税込)」「金額(税抜)」 これで出てくる結果で、いかがでしょうか。 全く違うものをお求めでしたら、お役に立てず、すみません。     

関連するQ&A

  • エクセル 担当ごとに自動振り分け

    ご教授願います。 エクセル2003使用です。 シートが「入力」「担当無」「鈴木」「佐藤」「山田」・・・・とあります。 元のデータを「入力」シートに入力後、各担当に自動で振り分けられるようにしたいです。 元データとなる「入力」シート  A   B    C    D     E    F    G    H    1NO 担当 会社名 住所   商品名 数量 日付 金額   2 1 鈴木 ○会社 神奈川  ペン赤 100本 10/25  50万 3 2 担当無 △社  東京  ノート  200冊 10/26 10万 振り分け先となる「担当無」「鈴木」「佐藤」「山田」・・・・シート  A    B     C    D    E   F   G   H   I 4 NO 会社名  住所 商品名 数量 日付 金額 結果 備考 となります。 うまく説明できないのですが ・振り分け先には見出し等を付けたい為A1~3は空欄、A4は項目名にしたいです。 ・各担当が「担当無」のシートを見て自分のやりたい案件を選択できるようにしたいです。 ・選択された「担当無」に入力されていたデータは、選択した担当のシートに反映されるようにしたいです。又、反映後は「担当無」シートから削除。 ・振り分け先シートのみにある”H列の結果”と”I列の備考”は各担当が入力するため振り分けを実行したら下端のセルに自動でデータが追加されるようにしたいと思っています。 同じような質問などを参考にし色々試したもののマクロ、数式ともに勉強始めたばかりのレベルなので応用ができずデータが重複したり、エラーばかりなってしまいます。 図々しいとは思いますが、ご教示いただければ幸いです。 宜しくお願い致します。

  • EXCELで税込税抜き金額を計算する時に発生する、合計金額の誤差について

    【教えてください】 エクセルで税込金額から税抜き金額を自動計算し、それぞれ、複数の金額を合計すると、数円の誤差が生じてしましまいす。 合計誤差を0にするためには、(税込合計=税抜き合計×1.05にするためには)どのようにすればよいのでしょうか。 現在は一度自動計算し、誤差を手入力で修正しています。 何かいい方法があれば教えてください。 ちなみに、税抜き金額は税込金額÷1.05で自動計算しています。(小数点一桁で四捨五入し、整数にしています。) よろしくお願い致します。

  • エクセルで税抜き価格を入れて自動的に税込み価格に変換させたい

    エクセルでセルに税抜き価格を入力したら、自動的に税込価格に 変換されるようにするにはどうすればいいのでしょうか? よろしくお願い致します。

  • エクセルで仕入帳を作成

    エクセルの初心者です。 現在、MS Office2007のexcelで仕入帳の作成をしています。 各シートごとに仕入先の商品のやりとりを出しています。仕入先のシートは全部で7つあります。 さらに、別シートにて仕入商品の平均単価を出したものを作成しております。 その平均単価を出しているシートについてなのですが。 画像のように、各シート(仕入先)で購入した商品の月毎の単価を出そうと試みているのですが、 単価平均のシートのセルB4に =SUMIF(A!$C5:$C1000,"1",A!$F5:$F1000)/SUMIF(A!$C5:$C1000,"1",A!$D5:$D1000) というような数式をいれてます。 これを、同じシートのセルC5に入力する場合は数式のA!をB!にひとつずつ手入力で変更しなければならないのでしょうか? また、B5に入力するセルも"1"を"2"にひとつずつ手入力で変更するのでしょうか? まとめて変更する方法、もしくは数式自体変更したほうがいいのか 大変お手数ではありますが、ご教示よろしくお願いします。

  • エクセルで各Sheetへの自動振り分け

    エクセルで次のような作業がしたいのですが相談にのってください。 Sheet1は個人データベースで A列・・氏名 B列・・クラス名 C列以降はその他の情報が続きます。 クラス名がA、B、Cの三つだと仮定して Sheet2はAクラス、Sheet3はBクラス、Sheet4はCクラスに対応させたいのです。 Sheet1のB列にクラスを入力したらその行がクラスに対応するSheetに自動入力(リンク?)させたいと考えています。 例えば Sheet1のB列に「A」と入力したらSheet2に、 Sheet1のB列に「C」と入力したらSheet4に、 自動振り分けしたいのです。 意味が分かりにくい文章ですみません。補足があればしますのでご指導お願い致します。 WindowsXP、MS Office2000で作業してます。

  • エクセル 自動でシート振分

    エクセル2010を使用しています。 シート1には、会社名、住所等の記載がされてあります。 それぞれシート2~シート○まであ行、か行シートを作りたいと思っています。 シート1の会社名のふりがなをいかして自動で振り分ける事ができる関数ってありますでしょうか? (例) シート1には、A1=会社名、B1=会社名のふりがな(関数)、C1=担当者名、D1=郵便番号 E1=住所、F1=TEL、G1=FAXが記入されてあります。 色々と今までに回答をいただいたもので考えてやってみるのですが、どうしてもうまくいかないので どなたかご存知でしたらおしえていただけますでしょうか? 宜しくお願い致します。

  • VBA エクセル+アウトルックで自動メール送信

    エクセル、アウトルックともに2003です。 VBAは初心者でほとんど分からないのですが、下記のようなことはできますか? エクセル、シート1に顧客管理台帳を作りました。 A1セル メールタイトル(共通) A2セル 会社名 A3セル 担当者名 A4セル Eメールアドレス エクセル、シート2には送信する基本文章を入れようと思ってます。 A1セル    会社名が反映されるように A2セル    担当者名が反映されるように A3~A5セル 用件 シート1は50件ほどの顧客リストとなってます。 マクロ(VBA?)で1件ずつ、メールアドレス・タイトル、本文に会社名・担当者・用件が自動で入るようにしたいのですが、このようなことはできるのでしょうか? 送信前に内容を一応チェックしてから送信したいと思ってますので、送信ボタンを押すのは手動にしたいです。

  • エクセルの関数を教えてください。

    エクセル書類について教えていただきたいのですが… 下記のような表から担当者別に売上合計金額を出したいのですが エクセル初心者で関数があまりわかりません。 ランダムに並んだ担当者を抜粋してその月の担当者ごとの合計売上金額を別シート(同じシートでもかまいません)で 自動計算できる関数があると大変助かるのですが、そういった関数(やり方)はありますでしょうか? お教えいただけると幸いです。 よろしくお願いします。

  • エクセルでの項目のコピー(シート間)について

    こんにちは。 エクセルの項目のコピー(シート間)についてお尋ねします。 たとえば、 シート1にあるセルA1~H1までを、シート3のセルA1~H1に シート2にあるセルA1~H1までを、シート3のセルA2~H1に 自動でコピーすることはできるのでしょうか。 もしできるのでしたら、その仕方をお教えください。 (一つずつコピー→ペーストをするのが大変なので…) エクセルは超初心者のため、難しいことは全く分かりません。 よろしくお願いいたします。  m(_ _)m

  • excel VBAを使って、データを自動的に表示させるには!?

    excelのVBA・マクロの書き方について教えてください!! 商品データ(商品名、数量、産地、担当者、商品コード)を入力したシートがあります。 別のシートに、商品名を入力するだけで、商品データを参照して、数量・産地・担当者・商品コードが自動で入力されるマクロを作成したいです。 本を見ながらやっていたのですが、なかなか上手くいきません! (商品名を入力する)セルをあらかじめ指定し、そこに商品名を入力して表示させる方法はあったのですが・・・ セルを指定せずに、A列ならどこに商品名を入力しても、自動でデータが表示される方法はありますか??

専門家に質問してみよう