プロが教えるわが家の防犯対策術!

ExcelのVBAコードを教えて頂けますでしょうか。
例シート2つがあります。
シート1は元データ
シート2は集計データ

元データの
D4セルは東京 k4セルの数量は1 l4セルの数量は6
D5セルは東京 k5セルの数量は10 I5セルの数量は3
D6セルは千葉 k6セルの数量は5 l6セルの数量は1 D7セルは埼玉 k7セルの数量は9 l7セルの数量は9
D8セルは東京 k8セルの数量は5 l8セルの数量は4
D9セルは埼玉 k9セルの数量は6 l9セルの数量は50
最終行まで

集計データの
D7セルは東京 k7セルの数量は16 l7セルの数量は13
D8セルは千葉 k8セルの数量は5 l8セルの数量は1 D9セルは埼玉 k9セルの数量は15 l9セルの数量は59
最終行まで


Dim ws01 As Worksheet

Dim ws02 As Worksheet

Dim lastRowSrc As Long

Dim lastRowDest As Long

Dim I As Long

Dim j As Long

Dim lRow, mRow, R As Long

Dim Hani01, Hani02 As Variant

lRow = ws01.Cells(Rows.Count, "D").End(xlUp).Row

Set Hani01 = ws01.Range("D4:D" & lRow)

m行 = 2

ws02.Cells(mRow, "D") = "" まで実行します

R = 0 ~ 11 の場合

Hani02 = Range(ws01.Cells(4, 11 + R), ws01.Cells(lRow, 11 + R)) を設定します。

ws02.Cells(mRow, 11 + R) = WorksheetFunction.SumIf(Hani01, ws02.Cells(mRow, "D"), Hani02)

次のR

mRow = mRow + 1

loop

A 回答 (3件)

前も、同じ補足要求を行いましたが、


元データを県(都)毎に集計し、その結果を集計データに出力したい。
と理解しました。
集計データのI列、K列はマクロで出力することは、理解できますが、
D列は、どうするのでしょうか。
①マクロで、出力する。出力順は任意。
②予め、県(都)が記述してあり、その記述された県の行のI列、K列へ出力する。

等が考えられます。①②によって、マクロの作成方法が異なります。
このようなケースでは、dictionaryを使うと、簡単にまとめることが可能です。
    • good
    • 0

取り敢えず変数は纏めて宣言できないはず。



>Dim lRow, mRow, R As Long
>Dim Hani01, Hani02 As Variant

As ~ のついていない変数名は全てValiant型になるかと。
VB.NET なら可能だったかな。
    • good
    • 0
この回答へのお礼

早々のご対応ありがとうございます。

お礼日時:2023/11/14 11:48

何が知りたいの?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A