No.4ベストアンサー
- 回答日時:
こんにちは!
他の方が回答されていらっしゃるように、わざわざVBAでやる必要性がないと思うのですが・・・
画像の配置だとD列のセルの表示形式をユーザー定義から
0月売上
としておき、4とか5の数値のみ入力しておきます。
E1セルに
=SUMPRODUCT((MONTH(A$1:A$1000)=D1)*B$1:B$1000)
という数式を入れフィルハンドルで下へコピー!
これで大丈夫だと思います。
どうしてもVBAで!という場合、一例です。
Sub Sample1()
Dim i As Long, c As Range
Range("E:E").ClearContents
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
Set c = Range("D:D").Find(what:=Month(Cells(i, "A")) & "月売上", LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then '//←念のため//
With c.Offset(, 1)
.Value = .Value + Cells(i, "B")
End With
End If
Next i
End Sub
※ どちらも月だけしか考慮していませんので
複数年のデータがある場合、その月の合計が表示されます。m(_ _)m
No.3
- 回答日時:
SUMPRODUCT関数でもできるよ。
No.2
- 回答日時:
こんにちは
>マクロでの合計金額算出方法を教えて頂けませんでしょうか?
もちろんマクロでも可能ですが、関数式でもできるのでそちらの回答を。
・A列の日付はシリアル値と仮定しています。
・B列の金額は数値で、\表記やカンマ区切りは書式設定で行っていると仮定します。
・D列の値は数値(4,5,6…)で、「月売上」は書式で設定していると仮定します。
E1に
=IF(D1,SUMPRODUCT((MONTH(A$1:A$100)=D1)*B$1:B$100),"")
として、下方にフィルコピーではいかがでしょうか?
※ 範囲を100行までとして設定しています
※ 月のチェックのみで、年はチェックしていません
※ 上記の仮定と異なっていても可能ですが、関数式が変わります。
例えば、D列が「4月売上」のような文字列の場合は、
関数式の「=D1」の部分を「=LEFT(D1,LEN(D1)-3)+0」のように変えることで、同じ結果を得ることができます。
※ なお、エラー処理は省いています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで最初に値が入っているセルを見つける方法はありますか? 2 2023/07/18 14:58
- Excel(エクセル) アウトラインの小計のやり方 1 2023/03/20 11:51
- Excel(エクセル) エクセルの計算式を教えてください 3 2023/03/14 13:48
- Excel(エクセル) エクセルの表でダブりを解消する方法を、教えてください。 5 2023/04/12 12:11
- その他(お金・保険・資産運用) 至急!【Wolt】各メニューの価格設定の簡単な計算方法 3 2023/03/05 11:58
- Excel(エクセル) 特定文字(数字)で行挿入、挿入された行で合計したい 2 2023/03/13 14:30
- Excel(エクセル) 列を自動で追加したい 3 2022/07/11 12:58
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- Excel(エクセル) エクセルで、未来の月の数値を表示させないようにしたい 1 2022/05/07 18:58
- Excel(エクセル) エクセルでSUMIFS関数で条件範囲の部分が#valueになる。 4 2023/04/28 12:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAについての質問です
-
Excelにいついて質問です。
-
CSVファイルについて質問です。
-
エクセルの「入力規則」のプル...
-
一つのセルに(例えばA1)入力...
-
Excelの関数について教えてくだ...
-
エクセルファイルがファイルの...
-
【マクロ】名前を保存する際に...
-
エクセル共有したが、アクセス...
-
エクセル vbaについて教えてく...
-
Excel 複数列 A列B列C列一致 D...
-
エクセルであるセルに数字を入...
-
エクセルのデーターが2か月前の...
-
UNIQUE関数が使えないバージョ...
-
Excelについて教えてください
-
エクセル初心者です 関数の入れ...
-
Excelでセルの値が同じか...
-
Excelはなんで先頭の0を消すん...
-
【Excel】数字を3倍にし、なお...
-
エクセルで年休を管理する方法...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報