Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
running VB code
I have a template which refreshes the data (from an
external data source) on opening the template. I then want to remove a row and do a subtotal over the data by running some VBA code. When I step through the code, it works fine, but at runtime, on opening the template I get an error. I have tried putting the data refresh into the code, but it doesn't help. I am new to excel programming, but this is what I've done so far... Private Sub Workbook_Open() 'Worksheets(1).Activate Set currentcell = Worksheets(1).Range("A5") Worksheets(1).Range("A5").QueryTable.Refresh Set currentcell = Worksheets(1).Range("A5") currentcell.EntireRow.Delete 'ActiveCell.EntireRow.Delete 'Set currentCell = Worksheets(1).Range("A5") Range("A5").Select Selection.Subtotal groupBy:=1, Function:=xlSum, _ totalList:=Array(7) End Sub |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
running VB code
The usual problem is that you are doing a background query and the code
completes before the query does. This should fix it: Private Sub Workbook_Open() 'Worksheets(1).Activate Set currentcell = Worksheets(1).Range("A5") Worksheets(1).Range("A5").QueryTable.Refresh _ Backgroundquery:=False Set currentcell = Worksheets(1).Range("A5") currentcell.EntireRow.Delete 'ActiveCell.EntireRow.Delete 'Set currentCell = Worksheets(1).Range("A5") Range("A5").Select Selection.Subtotal groupBy:=1, Function:=xlSum, _ totalList:=Array(7) End Sub -- Regards, Tom Ogilvy "Cath" wrote in message ... I have a template which refreshes the data (from an external data source) on opening the template. I then want to remove a row and do a subtotal over the data by running some VBA code. When I step through the code, it works fine, but at runtime, on opening the template I get an error. I have tried putting the data refresh into the code, but it doesn't help. I am new to excel programming, but this is what I've done so far... Private Sub Workbook_Open() 'Worksheets(1).Activate Set currentcell = Worksheets(1).Range("A5") Worksheets(1).Range("A5").QueryTable.Refresh Set currentcell = Worksheets(1).Range("A5") currentcell.EntireRow.Delete 'ActiveCell.EntireRow.Delete 'Set currentCell = Worksheets(1).Range("A5") Range("A5").Select Selection.Subtotal groupBy:=1, Function:=xlSum, _ totalList:=Array(7) End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Running code on workdays | Excel Worksheet Functions | |||
VB code for running a macro | Excel Discussion (Misc queries) | |||
Automatically running code | Excel Worksheet Functions | |||
running code | New Users to Excel | |||
Running Code in an XLA from a Worksheet | Excel Programming |