Solved

Excel Summary VBA

Posted on 2014-12-07
5
319 Views
Last Modified: 2014-12-08
Hello,
can you please help,
I'm trying to get the Grand Total at the end of my sheet , (Find last Row + 1) and Highlight.

Grand Total = Sum of the Totals of each city .
please see attached..

I have about 1500 - 2000 Rows.

Any Help is appreciated.
Sample.xlsx
0
Comment
Question by:W.E.B
5 Comments
 
LVL 49

Accepted Solution

by:
Rgonzo1971 earned 150 total points
ID: 40486232
Hi,
pls try with subtotal

see example

Regards
Sample-V1.xlsx
0
 
LVL 32

Assisted Solution

by:Rob Henson
Rob Henson earned 150 total points
ID: 40486570
Assuming your data doesn't start out with the rows for summing each city, you can add subtotals as rgonzo has suggested and then use the following to update them:

Sub Add_Subtotal()
    Selection.CurrentRegion.Select
    Selection.Subtotal GroupBy:=11, Function:=xlSum, TotalList:=Array(5, 6, 7, 8 _
        , 9, 10), Replace:=True, PageBreaks:=False, SummaryBelowData:=True
End Sub

Open in new window

Thanks
Rob H
0
 
LVL 16

Expert Comment

by:Jerry Paladino
ID: 40486581
In the OUTLINE Group under the DATA menu, select the Subtotals icon to add one or multiple subtotals to your Excel list of data.   The data must have a header row and must be an Excel list (cannot be formatted as an Excel table).   With the cursor located in the data range, go to the Outline Group located under the DATA menu and select Subtotals.  The dialog box shown below will display and allow you to select the columns to sum ( or count, avg, min, max, etc…) and the column to use for the "On Change" column (City in this case).

Once the Subtotals are displayed, to the left of the row numbers are expand and collapse buttons.  Pressing one of these will expand or collapse the list of data to show only the city rows, etc…   Adding or deleting rows (and new cities, etc…)  will automatically update the subtotals.

You can highlight the Subtotal and the Grand Total Rows and they will maintain the color highlight as data is added or deleted.

Another option for this type of reporting is to use a Pivot Table.   The attached file has samples of both the Subtotals and the pivot tables.

HTH,
JerrySubtotal IconSubtotal DialogSubtotal Expand / CollapseQ-28576016.xlsx
0
 
LVL 16

Assisted Solution

by:Jerry Paladino
Jerry Paladino earned 200 total points
ID: 40486838
I reread your question and if you want the VBA to find the last row in the worksheet you can try this code...
Sub LastRow_WS()
' Returns the last used row in the active worksheet
    Dim rLastCell As Range
    Dim ws As Worksheet
    Set ws = ActiveSheet
    Set rLastCell = ws.Cells.Find(What:="*", After:=ws.Cells(1, 1), LookIn:=xlFormulas, LookAt:= _
                    xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False)
    Debug.Print "The last used row in this Worksheet is: " & rLastCell.Row
End Sub

Open in new window

0
 

Author Closing Comment

by:W.E.B
ID: 40487549
thank you all.
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This Article briefly covers methods of calculating the NPV and IRR variants in Excel as well as the limitations in calculating and interpreting IRR results. Paraphrasing Richard Shockley, author of my favourite finance reference tex…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
This Micro Tutorial will demonstrate how to create pivot charts out of a data set. I also added a drop-down menu which allows to choose from different categories in the data set and the chart will automatically update.
Many functions in Excel can make decisions. The most simple of these is the IF function: it returns a value depending on whether a condition you describe is true or false. Once you get the hang of using the IF function, you will find it easier to us…

823 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question