I have a worksheet Movements with two fields:
mydate | amount
2009-01-01 | 10.00
2009-01-02 | 13.00
2009-02-01 | 11.00
2009-02-05 | 12.00
2
You need to use an array approach. How to combine arrays you can learn here https://stackoverflow.com/a/42488671/1393023
QUERY
It's simple and transparent
=QUERY(
ARRAYFORMULA({TEXT(Movements!A:A,"YYYY-MM"),Movements!B:B}),
"select Col1,sum(Col2) group by Col1"
)
ARRAYFORMULA(SUMIF)
Just combine the functions to a chain
=SORT(UNIQUE(FILTER(
{
TEXT(Movements!A2:A,"YYYY-MM"),
SUMIF(EOMONTH(Movements!A2:A,1),EOMONTH(Movements!A2:A,1),Movements!B2:B)
},
LEN(Movements!B2:B)
)),1,1)
My example