Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Excel / Programming / December 2007

Tip: Looking for answers? Try searching our database.

Continue to have issue with array in Subtotals automation

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
robs3131 - 08 Dec 2007 22:04 GMT
Hi all,

I had posted on this issue previously, but was not able to find a solution
from those who provided input.  Below is a better description of what I'm
trying to do and the issue I'm having:

I am trying to get the code to subtotal beginning with column BA and going
through the last column to the right (the number of columns to the right of
BA can vary).  The subtotal needs to be based on changes in column A (ie -
subtotal for "Bob", then for "Mary", etc) -- the headers are in row 2 and the
data to be summed begins with row 3 (after a blank row 3 is deleted by one of
the first lines in the code).  The line of code below noted by ** results in
the following error:

Error:
Run-time error '1004':  Subtotal method of Range class failed

Sub subtotalcum()

Dim aryCols() As Variant
Dim i As Integer
Dim max As Integer

Dim rng As Range

   With Sheets("Commission by Entity breakdown")
   
       .Rows("3:3").Delete shift:=xlUp

       On Error Resume Next
       Set rng = .Range(.Range("BA2"),
.Range("IV2").End(xlToLeft).Offset(0, -8))
       max = rng.Count
       ReDim aryCols(1 To max)
       On Error GoTo 0
       If Not rng Is Nothing Then

           For i = 1 To max
               aryCols(i) = i + 52
           Next i

           .Range("A2").subtotal _
                   GroupBy:=1, _
                   Function:=xlSum, _
                   TotalList:=aryCols(), _
                   Replace:=True, _
                   PageBreaks:=False, _
                   SummaryBelowData:=False
       End If
   End With

End Sub
Signature

Robert

Dave Peterson - 08 Dec 2007 22:29 GMT
When I had good data in my worksheet, your code worked fine for me.

But if I screwed up and didn't have nice data, then I could get the error.

I'd remove the "on error resume Next" line (along with the "on error goto 0"
line) and verify that my rng was what I wanted:

Msgbox rng.address

And even step through the code to see what was in arrcols.  Maybe it wasn't what
you wanted.

> Hi all,
>
[quoted text clipped - 50 lines]
> --
> Robert

Signature

Dave Peterson

robs3131 - 09 Dec 2007 02:17 GMT
Hi Dave,

Thanks for the suggestion.  I found that the problem was that there weren't
values in some cells in the header row -- once I put values into those cells,
the code worked perfectly.

Thanks!

Robert
Signature

Robert

> When I had good data in my worksheet, your code worked fine for me.
>
[quoted text clipped - 62 lines]
> > --
> > Robert
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.