solved

Relevant answer

Samir Shaker 1 year ago

Krupin Dharaiya Put the formula accordingly:

• in K4: =I3 • in L4: =K4+9 • in N4: =L4+1 • in O4: =N4+9 • in Q4: =O4+1 • in R4: =EOMONTH(I3,0)

• in H6: =SEQUENCE(COUNTA(I6:I100)) • in I6 =FILTER(B6:B21,A6:A21<=EOMONTH(I3,0)) • in L6: =SUMIFS($C:$C,$B:$B,$I6,$E:$E,">="&K$4,$E:$E,"<="&L$4) • in O6: =SUMIFS($C:$C,$B:$B,$I6,$E:$E,">="&N$4,$E:$E,"<="&O$4) • in R6: =SUMIFS($C:$C,$B:$B,$I6,$E:$E,">="&Q$4,$E:$E,"<="&R$4)

1 Like

Relevant answer

Mayukh Bhattacharya 1 year ago

Nikhil Jain this is already solved, kindly search the group. Here are two links, of the solution. Grouping is basically based on Empty rows using Power Query, most flexible dynamic, scalable and robust approach.

• https://www.facebook.com/groups/659225117560345/permalink/2463275697155269/

• https://www.facebook.com/groups/659225117560345/permalink/2461383564011149/

0 Likes

Relevant answer

Michael Anthony Owen 1 year ago

OK, so first principles... Your input sheet should be a sheet with all your info in. Then another sheet should have your summary or report or calculation in. You shouldn't be deleting out old stuff, just give it a date and move on to your next row in your data sheet. This means you don't delete input rows and you can use formula to give the answer you want.

With regards to finding last row, find * tends to be the most consistent I have found. So you would Dim LstRw as long and set lstrw LstRow = 1 On error resume next Lstrw = thisworkbook.sheets("nameofthesheet").Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row On error goto 0

The reason you set to 1 is because if the spreadsheet is blank, it gives the value as 0, and a last row as zero would cause an error so you set to 1 to avoid that.

I know you are new to it, but sometimes it's better to learn something properly rather than quickly as it will cause problems later on!

1 Like

Hot network questions