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 / April 2008

Tip: Looking for answers? Try searching our database.

Query adds rather than replaces

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Leanne - 17 Apr 2008 09:50 GMT
Hi,  I have the following code in to run a query from a button and this works
great - except for the fact that instead of replacing existing data it places
the new data beside it - moving along the columns each time.

Please can someone help point out where I have gone wrong.

Private Sub CommandButton1_Click()

 Dim strConnection As String
 Dim strFullFileName As String, strFolder As String
 Dim strQueryName As String
 
 strQueryName = "Pest-Invoice Due"
 strFolder = "U:\"
 
 strFullFileName = _
   strFolder & strQueryName & ".dqy"
 strConnection = "FINDER;" & strFullFileName
   
 With ActiveSheet.QueryTables.Add( _
   Connection:=strConnection, _
   Destination:=Range("A7"))
   .Name = strQueryName
   .FieldNames = True
   .RowNumbers = False
   .FillAdjacentFormulas = False
   .PreserveFormatting = True
   .RefreshOnFileOpen = False
   .BackgroundQuery = True
   .RefreshStyle = xlInsertDeleteCells
   .SavePassword = True
   .SaveData = True
   .AdjustColumnWidth = True
   .RefreshPeriod = 0
   .PreserveColumnInfo = True
   .Refresh BackgroundQuery:=False
 End With
End Sub
FSt1 - 17 Apr 2008 11:44 GMT
hi
basicly your code is creating a new query each time your code is run.
Microsoft query will not overwrite an existing query so it creates a new
query beside the old query.
solution: archive the code you have now and replace it with update code and
attached the update code to the button.
assuming that your MSQ is on sheet 1 cell A1.....
sub refreshMSQ()
Sheets("Sheet1").activate
Range("A1").QueryTable.Refresh BackgroundQuery:=False
Msgbox "Refresh complete"
End sub

Adjust sheet name and MSQ range to suit.

Regards
FSt1

> Hi,  I have the following code in to run a query from a button and this works
> great - except for the fact that instead of replacing existing data it places
[quoted text clipped - 34 lines]
>   End With
> End Sub
Leanne - 17 Apr 2008 12:00 GMT
Thank you so much - I never would have imagined that such a small amount of
code could replace all that I had.

If only I could solve my lookup/record change issue!

> hi
> basicly your code is creating a new query each time your code is run.
[quoted text clipped - 52 lines]
> >   End With
> > End Sub
 
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.