- 締切済み
VBAで複数条件の合計の出し方について
こんにちは。 VBAについて困っているので質問させていただきます。 <概要> 決められたフォーマットに他のシートから二つの条件が合った場合の合計を出したい データシート A B C D 1 名前 区分 担当 給料 2 Aさん 社員 ホール 1234 3 Bさん アルバイト キッチン 2345 4 Cさん 社員 ホール 6789 5 Dさん アルバイト 掃除 1011 ↑とあるとします。 このときに『社員かつ担当がホールの方の給料の合計』を他のシートに出したいのですが、 上手くいきません。 使用している関数としては・・・ Dim Data Data = "データ" Worksheets(Data).Activate Dim SelectTantou SelectTantou = file.ListBox.Value (リストボックスに担当場所表示) Dim SetData SetData = SelectTantou Dim EndDataNameCell EndDataNameCell = Worksheets(Data).Range("A1").End(xlDown).Row If Worksheets(Data).Cells(Rows.Count, 3) = "社員" Then Worksheets(SetData).Range("CH3").Formula = "=SUMIF('" & Data & "'!C2:C" & EndDataNameCell & "," & """=" & SelectName & """,'" & Data & "'!D1:D" & EndDataNameCell & ")" Worksheets(SetData).Range("A1").Formula = Worksheets(SelectName).Range("CH3").Value End If のような感じでやってみましたが、 値が表示されませんでした。 SUMPRODUCTもやってみましたが、 うまくいきません。。。 恐れ入りますが、お力添えをお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- ereserve67
- ベストアンサー率58% (417/708)
ワークシート関数にデータベース関数DSUMがあります. =DSUM(db,"給料",G5:H6) db:データベースの範囲名 G5:H6:抽出条件の入った範囲 G H 5 区分 担当 6 社員 ホール これで8023と正しくでます.
補足
お早いご回答ありがとうございます! G5:H6の部分は "!B1:B":"!C1:C" ということでしょうか? 初心者ですみません。。。