エクセルで収支表を作成しています。
区分が入っているセルがあるのですが、その区分ごとに行単位で同ファイルの違うシートへ自動転記することは可能でしょうか?
日付 入金 code 社名 区分 ~ 資料計 ~ 立替計 ~ 前払計 合計 残金
2/3 500 1056 ×× ●表 ~ 3000 ~ 0 ~ 500 500 11100
2/6 1057 ×× △地 ~ 500 ~ 300 ~ 0 800 10300
2/3 800 1056 ×× ★表 ~ 1000 ~ 200 ~ 0 1200 9900
と、いうような収支表があります。
これを「●表」、「△地」、「★表」のそれぞれのシートに、行ごと、できれば合計の前までを、自動転記することができるでしょうか?
☆出来上がりイメージ
シート名(●表)
日付 入金 code 社名 区分 ~ 資料計 ~ 立替計 ~ 前払計
2/3 500 1056 ×× ●表 3000 0 500
シート名(△地)
日付 入金 code 社名 区分 ~ 資料計 ~ 立替計 ~ 前払計
2/3 0 1057 ×× △地 500 0 300
シート名(★表)
2/3 500 1058 ×× ★表 1000 0 200
収支表に入力すれば、各シートに自動的に転記され、ぞれぞれの表が作成できるようにしたいのです。
まったくの初心者です。
いままでの質問結果を見ても自分の質問がどれに当たるのかもわかりませんので質問させていただきました。
具体的にどこのセルにどのようにすればいいのか、かみくだいてご説明いただけると大変助かります。
ここに書いた表もぐちゃぐちゃで、分かりずらいとは思いますが、どうぞよろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
このマクロで実現できます。
条件としては、
・転記元のシートを表示した状態でマクロを実行すること
・1行目が項目名で、区分がE列であること
・区分の名前がついたシートが存在すること
Sub AutoCopy()
Dim RowX As Long
Dim ColX As Long
Dim Category As String
ColX = 5
RowX = 2
Do Until IsEmpty(Cells(RowX, ColX).Value)
Category = Cells(RowX, ColX).Value
Rows(RowX).Copy Destination:=Sheets(Category).Cells(Rows.Count, ColX).End(xlUp).Offset(1).EntireRow
RowX = RowX + 1
Loop
End Sub
あとで修正を加えようとしても、理解していないと無理な場合もあります。
これがきれいなマクロとは言いがたいですが、これを入り口として、マクロの勉強をしてみてください。
higekumanさん、ありがとうございます。
この通りにやってみたら、できました!
すごく感激です。。
が、しかし20行目までしか転記されません。
場合によっては、100行くらいいくかも知れないのです。
どこを修正すればいいのでしょうか?
実際には区分はF列にあるので
ColX = 5 を ColX = 6 にすればいいのですね。
件名が入っているのが、5行目からなので
RowX = 2 を RowX = 5 にしました。
また、毎回マクロを実行すると初めからのものも再度転記されてしまうのですが、その日だけを転記するということもできるのでしょうか?
たくさん質問攻めで申し訳ないのですが、お答えいただけるとうれしいです。よろしくお願いいたします。
No.3
- 回答日時:
#2です。
> が、しかし20行目までしか転記されません。
このマクロは、区分が空セルのところで止まるようになっています。
21行目が空行になっていませんか?
> 実際には区分はF列にあるので
> ColX = 5 を ColX = 6 にすればいいのですね。
そうです。
> 件名が入っているのが、5行目からなので
> RowX = 2 を RowX = 5 にしました。
違います。
> また、毎回マクロを実行すると初めからのものも再度転記されてしまうのですが、
そのように作りました。
> その日だけを転記するということもできるのでしょうか?
当然出来ます。
> たくさん質問攻めで申し訳ないのですが、お答えいただけるとうれしいです。よろしくお願いいたします。
このまま答えていくと、すべて私が作ることになり、あなたの勉強にならないので、これで終わりにさせていただきます。
勉強頑張ってください。
higekumanさん
暖かいご忠告ありがとうございます。
たくさんのヒントをいただき、嬉しく思います。
私なりに調べて勉強して、必ず作成します。
本当にありがとうございました。
No.1
- 回答日時:
VBAなどを使うと出来るのですが、初心者の方とのことで
かなり難しいと思います。
自動転記ではないですが、
オートフィルタを使うのはダメですか?
[データ]-[フィルタ]-[オートフィルタ]で、
区分を「●」を選択すると、
区分が「●」の行だけ表示されますので、
コピー&ペーストで、
「●」シートへ貼り付け。
「△」「★」も同様に。
早々に、ご回答いただきありがとうございます。
bluepenguinさんのおっしゃるとおり、現在はオートフィルタを使ってコピー&ペーストで貼り付けています。
春以降、区分も件数も増えるとのことなので、それに備えて今から考えていきたいと思っています。
VBAは難しいとは聞いておりますが、ぜひ試してみたいと思います。
私なりに一生懸命勉強いたしますので、ご教授お願いできないでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelで、セル内に文字が入力さ...
-
VBAでエクセルシートを更新...
-
エクセルで別シート、または別...
-
エクセルの担当者別にシートを...
-
「24日の0時」って・・・
-
エクセルのチェックボックスを...
-
履歴書の日付間違いで落ちますか。
-
回覧板の日付について質問です...
-
エクセルの列が左右逆に・・・・
-
Accessでの時間別集計について
-
2つの日付の中間の日付 エク...
-
エクセルで最高値、最低値の日...
-
エクセルでのNULLという文字列...
-
パソコンで購入したデーターが...
-
日付の大小の表現
-
ACCESSで年度入力したい...
-
子機から親機に日付と時刻が転...
-
ACCESSで1月1日~12月31日まで...
-
Wordで、ヘッダーに印刷日付を...
-
Excelについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでエクセルシートを更新...
-
excelで、セル内に文字が入力さ...
-
エクセルのシートを同時に行削...
-
【エクセル】シートのロックで...
-
表示倍率を変更させない方法
-
エクセルの担当者別にシートを...
-
エクセルVBAで65536レコードを...
-
Excelのマクロで、開いた時に、...
-
エクセル◎○の人は、一つ昇格し...
-
エクセルVBAでデータ検索について
-
同一セルに入力規則のリストと...
-
エクセルシート内データの保護
-
エクセルで別シート、または別...
-
Excelで、表に小計と合計を入れ...
-
エクセルVBAの文字列の部分一致...
-
エクセルで、2つのシートにある...
-
ホームページビルダーv10でエク...
-
エクセルのCSVについて
-
ワードの差し込み印刷について
-
シートを串刺しで抽出したいの...
おすすめ情報