顧客管理のデータを入力しています。
月日 顧客名 数量 累計 担当者 コード 欄外
2/14 ○○○ 1 1 田中 A 1
2/14 ○○○ 1 2 田中 B 2
2/14 ○○○ 2 4 鈴木 1
2/15 ○○○ 2 6 鈴木 C 2
こんな感じだとします。
累計にはIF(ISBLANK(C3),"",D2+C3)のような式が入ってます。
コードAと空欄のものと、BとCとの2つの表に分けたいと
します。シート1には全体の表を、シート2にAと空欄、シート3に
BとCを表示したい時はどうしたらいいでしょうか?
新しいデータはシート1にどんどん入力したいのです。
シート2とシート3それぞれの累計と通番号も付けたい場合、
どうやるのが一番でしょうか・・。
今はシート1の欄外に1と2と入力してシート2に
=IF(シート1!H1=1,シート1!A1,"")
と入れています。
そうするとどうしても空白の行ができてしまい、
累計の演算式もエラーが出ます。行削除して、
通番号を付け直していますが、他に一発で隙間なく
シート2,3へ転記され、各シートごとの累計を出す方法が
ありましたらおしえてください。
No.1ベストアンサー
- 回答日時:
VBAマクロを使えば簡単です。
暇だったんで作って見ました(^^;作って見たので、試して見てください。
試す場合は、自己の責任に於いて行ってください。
実行により、不都合が生じても責任は取れませんので....
最低限、マスターはコピーを取って置いてください。
表示→ツールバー→コントロールツールボックスでコントロールツールボックスを表示し、ボタンをsheet1の欄外に貼り付けてください。
そのボタンをマウスでダブルクリックしてください。
マクロが表示されれば、下のプログラムを追加してください。
コントロールツールボックスを閉じ、一旦保存しExcelを終了してください。
再起動時、「マクロ云々」のメッセージが出ますので「マクロを有効にする」を選択し、起動後、ボタンを押下してみてください。
マクロは必要に応じて修正してください。
Private Sub CommandButton1_Click()
Dim Count, S2, S3, S, loopf As Integer
Dim d1, d2, d3, d4, d5, sheetbuf As String
S2 = 2
S3 = 2
Count = 2
loopf = 1
While loopf
buff = "f" & Count
aa = Range(buff).Value
d1 = Range("a" & Count).Value
d2 = Range("b" & Count).Value
d3 = Range("c" & Count).Value
d4 = Range("e" & Count).Value
d5 = Range("f" & Count).Value
If aa = "A" Or aa = "" Then
sheetbuf = "Sheet2"
S = S2
ElseIf aa = "B" Or aa = "C" Then
sheetbuf = "Sheet3"
S = S3
End If
Worksheets(sheetbuf).Range("a" & S).Value = d1
Worksheets(sheetbuf).Range("b" & S).Value = d2
Worksheets(sheetbuf).Range("c" & S).Value = d3
If S = 2 Then
Worksheets(sheetbuf).Range("d" & S).Value = Worksheets(sheetbuf).Range("c" & S).Value
Else
Worksheets(sheetbuf).Range("d" & S).Value = "=IF(ISBLANK(C" & S & "),"""",D" & S - 1 & "+C" & S & ")"
End If
Worksheets(sheetbuf).Range("e" & S).Value = d4
Worksheets(sheetbuf).Range("f" & S).Value = d5
Count = Count + 1
If aa = "A" Or aa = "" Then
S2 = S2 + 1
ElseIf aa = "B" Or aa = "C" Then
S3 = S3 + 1
End If
If d1 = "" Then
loopf = 0
End If
Wend
End Sub
感動です!VBAマクロを記述していただけるなんて思ってもいませんでした!
本当にありがとうございます!ポイントでしかお礼できないのがつらいです。
そしてなによりツライのは自分のエクセルの知識はマクロを理解できないと
いうことです(涙)。でも近いうちに必ず理解できるように、せっかく
作っていただいたものを自分で使えるように、勉強します。
素早くそして丁寧な回答に感謝します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) エクセルの日報作成について 3 2023/07/05 12:49
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Visual Basic(VBA) 【VBA】Excelで罫線を引きたい 3 2022/07/14 12:04
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Excel(エクセル) Excelでのデータ管理 6 2022/12/24 09:33
- Excel(エクセル) 【エクセル】参照セルに何も入力が無い場合の空白表示方法 1 2022/05/26 10:01
- Visual Basic(VBA) コード名シートA列と集計シートA列のコードが一致したら、コード名シートA5からk12の範囲をコピーし 1 2022/08/29 23:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロを複数シートに実行する...
-
エクセルを開いたとき常に同じ...
-
エクセルで回数をカウントする...
-
複数シートの保護・解除
-
EXCELでワークシートを開いたら...
-
VBAで条件によってシート見出し...
-
Excel:複数シートから条件に合...
-
【 Excel】シートの見出しに自...
-
コマンドボタンがデザインモー...
-
エクセルの複数のワークシート...
-
EXCELのエラー
-
ExcelのSheetに作られたMacro1...
-
エクセルシート内での閲覧制限
-
マクロを特定の複数シートで実...
-
エクセルVBAでcmbBoxのプロパテ...
-
【Excel VBA】シート見出しの色...
-
シートを保護した時でも並べ替...
-
エクセルでシートの並び替えで...
-
EXCEL 複数シートを1つの...
-
マクロで複数シートに条件付き...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドボタンがデザインモー...
-
マクロを複数シートに実行する...
-
【 Excel】シートの見出しに自...
-
EXCELでワークシートを開いたら...
-
エクセルを開いたとき常に同じ...
-
VBAで条件によってシート見出し...
-
EXCELでマクロを使わずに図形の...
-
マクロを特定の複数シートで実...
-
エクセルでシートの並び替えで...
-
エクセルの複数のワークシート...
-
複数シートの保護・解除
-
エクセルで複数のSheetを一括フ...
-
エクセルで回数をカウントする...
-
EXCELのエラー
-
Excel:複数シートから条件に合...
-
VBA シート名を先月の名前に...
-
EXCELの起動時に常に同じ...
-
Excelで,特定のシートを開いた...
-
Excelのマクロの呼び出し元を知...
-
メッセージボックスでシート名...
おすすめ情報