EXCEL2007を使用しています。
1つのシートに2008年度の会計をまとめていましたが,それを項目ごとにシートわけをしたいのです。
たとえば
[SHEET1]
月 日 項目 内容 収入 支出 残高
4 10 会費 4月分 10000 10000
4 20 会議 定例会議 5000 5000
4 30 事務費 文具 500 4500
5 10 会費 5月分 10000 14500
となっている場合,会費だったらSHEET2,会議だったらSHEET3に,というようにしていきたいのです。
どのような関数を使用したらできるでしょうか?
どなたかわかる方がいらっしゃいましたら,教えていただきたいと思います。
また,この先のSHEET1に追加していく予定なのですが,それらを自動的に振り分けることはできるでしょうか?
EXCELは基本的な関数(if,sumなど)が使えるようになってきたばかりの初心者です。
よろしくお願いいたします。
No.5ベストアンサー
- 回答日時:
更に修正:
Sheet2以降のA2セルに
=IF(Sheet1!C2=$A$1,ROW(),"")
下方向コピー
B2セルに
=IF(COUNT($A:$A)<ROW()-1,"",OFFSET(Sheet1!A$1,SMALL($A:$A,ROW()-1)-1,0))
横方向Sheet1のデータがある列+1列までにコピー
そのまま下方向へコピー
今度は短くて分りやすいかな
この回答への補足
web2525様
質問者のmin-o-minです。
できましたぁぁぁ!ありがとうございました!
1つ質問させていただきたいのですが。
Aの作業用セルというのはどのような効果があるのでしょうか?
上司に提出する際,「これはなんだ?」と言われそうで・・・。例えば今Aの列にある作業用セルを1番右,Gの列に移動することはできるのでしょうか?
夜遅いですのに…本当にありがとうございます。
Sheet2の形なのですが,Aの列に来るのはなんの項目なのでしょうか?
あーーーもう・・・理解できない自分にイラついてしまいます。。。
申し訳ありません。
お時間ありましたら,教えてください。
関数,ご自分で考えられてるんですね!!すごすぎます!!!
わたしでも理解できそうです。がんばります!
No.6
- 回答日時:
>Aの作業用セルというのはどのような効果があるのでしょうか?
※Sheet1のデータ抽出行の抽出用です
例:A1に入力された抽出項目キーとSheet1の項目名が一致する行にその行番号を表示させています。
B列以降の抽出作業は表示された行番号を元に拾い出しを行っています。
>上司に提出する際,「これはなんだ?」と言われそうで・・・。例えば今Aの列にある作業用セルを1番右,Gの列に移動することはできるのでしょうか?
※A列事態を非表示にする事で見やすくなるかと思います、もちろん移動も可能です。
移動の時は列自体を選択(列番号のAをクリック)、データ部の黒枠をクリックしてそのまま移したい場所へドラッグしてください、異動後にA列を削除して完了、何処に移動しても列の表示を隠した方が見栄えは良くなります。
なるほど!
ありがとうございました!!
早速参考にさせていただきたいと思います。
何から何までありがとうございました!!
助かりました(T_T)
No.4
- 回答日時:
ついでに動作の説明:
Sheet2のA列は作業セルです
=IF(Sheet1!C2="","",ROW()*(Sheet1!C2=$A$1))
Sheet1のセルC2が空欄(データ未入力)の場合は空欄、データが入っている場合はA1と比較して集計する項目であればROW()関数で入力されたデータの行番号を返します、項目が一致しない場合は0を返します。
B2セル以降は
=IF(COUNTIF(OFFSET($A$2,0,0,COUNT($A:$A)),">0")+1<ROW(),""
現在のセル行がSheet1の抽出するデータ個数以上の行数の時に""(ブランク)を出力
後半部の
OFFSET(Sheet1!A$1,SMALL(OFFSET($A$2,0,0,COUNT($A:$A)),COUNTIF(OFFSET($A$2,0,0,COUNT($A:$A)),0)+ROW()-1)-1,0))
Sheet1の各列から目的のデータを抽出
抽出方法は、A列で算出したデータ行を0を除く少ない方から順に取り込みその行数だけオフセットしたSheet1のデータを抽出しています。
もう少し整理するともっと単純な計算式で実現可能かとは思いますが、閃きのみでやってますので、だらだらと長くなってしまいましたw
No.3
- 回答日時:
確認:Sheet1のデータは1行目に各項目、2行目以降がーデータで間違いないですか?
一部計算式修正です
Sheet2!A1セルに集計したい項目名 例:会費
Sheet2!A2セルに
=IF(Sheet1!C2="","",ROW()*(Sheet1!C2=$A$1))
下方向にコピー、ROW()の括弧の中は空欄ですSheet1のデータ数以上コピーしてください。
Sheet2!B2セルに
=IF(COUNTIF(OFFSET($A$2,0,0,COUNT($A:$A)),">0")+1<ROW(),"",OFFSET(Sheet1!A$1,SMALL(OFFSET($A$2,0,0,COUNT($A:$A)),COUNTIF(OFFSET($A$2,0,0,COUNT($A:$A)),0)+ROW()-1)-1,0))
ちょっと長いですが、エラー処理もしています、範囲指定の変更無しで何処までも範囲を増やすことが可能になっています。
Sheet3以降はSheet2をSheet自体コピーしてそのまま貼り付けて各シートのA1セルに集計したい項目名を入力で行ける筈です。
エラーにはならないはずですが、Sheet1のデータ内容が私の認識と違っているのかな?
Sheet1ですが,質問した際の形と同じです。
Aに月,Bに日,Cぶ項目,Dに内容,Eに収入,Fに支出,Gに残高となっています。
どのような順番に変えればよいでしょうか?
何回も何回も申し訳ございません。
お時間ある時で構いませんのでよろしくおねがいいたします。
No.2
- 回答日時:
一例ですが、
Sheet2の
A1に 集計したい項目 B1から横に 月 日 項目 内容 収入 支出 残高
A2に=ROW()*(Sheet1!C2:C5=$A$1)
下方向コピー
B2に
=OFFSET(Sheet1!A$1,SMALL($A$2:$A$5,COUNTIF($A$2:$A$5,0)+ROW()-1)-1,0)
H15までコピー
集計の範囲を広げれば増えた分も対応していきます。
エラー処理はしていないので条件付書式でエラーを白文字に変更してください。
回答ありがとうございました!
さっそくやってみました。が,エラーがでてしまったのです。
A2=ROW()*Sheet1!C2:C5=$A$1)で,ROW()の()の中には何かいれるのでしょうか?
重ね重ね質問で申し訳ありません。お時間あれば,回答お願いいたします。
No.1
- 回答日時:
今のままのリストの形態ですと、関数だけではできないのではないでしょうか。
補足ですがキーワードを検索するという関数は存在します、縦方向検索のVLOOKUPと横方向検索のHLOOKUPです。
関数だけで何とかしたいということであればVLOOKUP関数を使えるようなリストを考える必要があります。
手動でもかまわないのであれば、オートフィルタを使用し、会費のみを抽出してコピペする方法が最も簡単でしょうか。
自動で行う場合はマクロ(VBAという言語のプログラム)を組む必要があります。
回答ありがとうございます!
マクロ,ですかぁ・・・。私にはちょっと荷が重く感じてしまいますねぇ。もっと勉強が必要,といったところでしょうか。
上司に「自動的に移動できるようにしてこい!」と言われ・・・。この3連休で少し勉強したいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 列を自動で追加したい 3 2022/07/11 12:58
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- Excel(エクセル) Excel 売上管理シートに入力した売上データを、日報に自動反映させたいと考えています。 売上管理シ 3 2023/04/29 18:08
- Excel(エクセル) Excelで日報を自動で作成したい 売上管理シートに入力した売上データを、日報に自動反映させたいと考 1 2023/04/29 18:07
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) エクセルで割り振りをする方法 7 2022/08/02 14:02
- Excel(エクセル) エクセル関数について 2 2022/04/13 18:25
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) Excelについて 1 2023/03/06 10:26
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
在庫管理表に使うエクセルの関...
-
下記マクロでMsgBox "空白です...
-
REGEXREPLACE関数について、
-
エクセルでバーコード作成し使...
-
【マクロ】for next構文について
-
ユーザー定義関数をアドイン登...
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
エクセルで表
-
PDFの請求明細をエクセルにしたい
-
エクセルの関数について教えて...
-
Excelデータをコピペして、ペー...
-
スプレッドシート、Excelでの数...
-
LOOKUP関数を使えばいいのでし...
-
Excel VBについての質問です。
-
【マクロ】 IFERROR関数をマク...
-
エクセル日付 文字列の関数がエ...
-
【マクロ】読取専用のファイル...
-
【マクロ】その時、その時で変...
-
時間によってファイル名が変わ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA、別ブックへ転記す...
-
エクセルでの作業計算方法について
-
時間によってファイル名が変わ...
-
【関数】適切な文字数の数字を...
-
Excelについて教えてください
-
エクセル初心者です 関数の入れ...
-
【マクロ】ファイル名の変更に...
-
UNIQUE関数が使えないバージョ...
-
エクセルの計算
-
【関数】先頭だけにある、半角...
-
Excelで、決まった行を繰り返し...
-
Excelでセルの値が同じか...
-
LOOKUP関数を使えばいいのでし...
-
Excel
-
はがきについて。
-
エクセルの条件付き書式につい...
-
エクセルのデーターが2か月前の...
-
エクセル②
-
エクセルで「-0.0」と表示さ...
-
Microsoft1Officeの互換ソフト...
おすすめ情報