No.2ベストアンサー
- 回答日時:
お話がよく見えてきませんが、
○列A=大分類,列B=中分類,列C=小分類,列D=売上金額の表があります。
ということですが、結局は、種類別の「売上合計」を出すのですか?
単なる、ワークシート関数の式の組み立てではないのしょうか?
SUM でも、SUMPRODUCTでも、配列の確定の必要がありません。
With Sheet1
.Select
With .Range("A1", .Range("A65536").End(xlUp))
MsgBox Application.Evaluate("SUM(IF(" & .Address & "=1," & _
.Offset(, 3).Address & ",0))")
End With
End With
ここの部分は、もし、はっきりしているなら、
"SUM(IF(" & .Address & "=1," & .Offset(, 3).Address & ",0))"
"SUM(IF(A2:A200=1,B2:B200,0)"
でも構いません。ただし、列を指定しないでくださいね。(例:A:Aというように全体を指定する)
"SUMPRODUCT((A1:A200=1)*(D1:D200))"
Dim myValue As Variant
With Sheet1
.Select
myValue = Application.Evaluate("SUMPRODUCT((A1:A200=1)*(D1:D200))")
If Not IsError(myValue) Then
MsgBox myValue
Else
MsgBox "エラーが出ています", 16
End If
End With
このようにして、エラー処理します。
No.1
- 回答日時:
合計値を出す場合、ワークシート関数を使ったほうが、エラーを吐かなくて便利です。
TextBox に出す(またはLabelは、Caption)として、
サンプル: ボタンとかに以下を入れます。
Dim a As Double, b As Double, c As Double, d As Double
With Sheet1
With .Range("A1", .Range("A65536").End(xlUp))
a = Application.Sum(.Value)
If Not IsError(a) Then TextBox1.Value = Format$(a, "#,##0")
End With
With .Range("B1", .Range("B65536").End(xlUp))
b = Application.Sum(.Value)
If Not IsError(b) Then TextBox2.Value = Format$(b, "#,##0")
End With
With .Range("C1", .Range("C65536").End(xlUp))
c = Application.Sum(.Value)
If Not IsError(c) Then TextBox3.Value = Format$(c, "#,##0")
End With
With .Range("D1", .Range("DC65536").End(xlUp))
d = Application.Sum(.Value)
If Not IsError(d) Then TextBox4.Value = Format$(d, "#,##0")
End With
End With
この回答への補足
早速ありがとうございます。おかげさまで問題解決しました・・・と申し上げたい所なのですが、すみません。私の質問の仕方が悪く、正確には、
大分類、中分類、小分類にそれぞれ2つの分類コードがあり、
・全体の合計
・大分類2種の合計
・中分類2×2=4種の合計
・小分類2×2×2=8種の合計
計15コの合計をそれぞれ出したかったのです。
SUMPRODUCT関数のような形で導き出す必要があるのですが、こちらは可能でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
許せない心理テスト
私は「あなたの目の前にケーキがあります。ろうそくは何本刺さっていますか」と言われ「12本」と答えたら…
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
VBA テキストボックスの計算
Visual Basic(VBA)
-
Excel VBA ユーザーフォーム内のラベルにテキストボックスの計算結果を出す方法
Visual Basic(VBA)
-
エクセルVBA テキストボックスに3桁ごとにコンマ
Visual Basic(VBA)
-
-
4
Excel vbaで複数のテキストボックスの足し算
Visual Basic(VBA)
-
5
VBAでユーザーフォームにセル値を表示させるには
Visual Basic(VBA)
-
6
Excel VBA ユーザーフォーム内のラベルにテキストボックスの小計を出す方法
Visual Basic(VBA)
-
7
ユーザーフォームに別シートからデータを反映させたい。
Visual Basic(VBA)
-
8
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
-
9
ユーザーフォームに今の時間を表示
Access(アクセス)
-
10
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
11
TextBoxに日付を自動的に入れる
Visual Basic(VBA)
-
12
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
13
Excel VBAのユーザーフォームでVLOOKUP
Visual Basic(VBA)
-
14
エクセルVBA 1行飛ばしで転記するループ処理
Excel(エクセル)
-
15
Excelにて、ユーザーフォームで、日付けの範囲を指定し、検索しデーターを抽出し 別シートへ転記した
Excel(エクセル)
-
16
ユーザーフォーム内のテキストボックスからオートフィルター抽出を行う方法
Visual Basic(VBA)
-
17
ユーザーフォームのラベルに日付を表示させる方法があればお願いします。出来ればコード書いていただけると
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセル(勝手に太字になる)
-
EXCELで 一桁の数値を二桁に
-
2つのエクセルのデータを同じよ...
-
Excelで、A列にある文字がB列...
-
エクセル 文字数 多い順 並...
-
エクセルの表から正の数、負の...
-
エクセルの項目軸を左寄せにしたい
-
エクセルで一行毎、一枚づつ自...
-
エクセルで文字が混じった数字...
-
エクセルで一列おきに空白列を...
-
エクセルで、列の空欄に隣の列...
-
Excel、市から登録している住所...
-
エクセル 同じ値を探して隣の...
-
エクセルで最初のスペースまで...
-
Excel 文字列を結合するときに...
-
数字の下1桁について0~4は0、5...
-
エクセル 時間帯の重複の有無
-
VBAで文字列を数値に変換したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセルで最初のスペースまで...
-
エクセル(勝手に太字になる)
-
Excelで半角の文字を含むセルを...
-
エクセル 文字数 多い順 並...
-
2つのエクセルのデータを同じよ...
-
エクセルで文字が混じった数字...
-
文字列に数字を含むセルを調べたい
-
エクセル 時間帯の重複の有無
-
VBAで文字列を数値に変換したい
-
「B列が日曜の場合」C列に/...
-
エクセル 同じ値を探して隣の...
-
エクセルの項目軸を左寄せにしたい
-
エクセルで、列の空欄に隣の列...
-
お店に入るために行列に並んで...
-
Excel、市から登録している住所...
-
エクセルの並び変えで、空白セ...
-
オートフィルターをかけ、#N/A...
-
エクセルの表から正の数、負の...
おすすめ情報