tags:

views:

756

answers:

2

Can anyone please convert this Excel generated VBA code to vb.net? I need to access the Selection.ListObject.QueryTable object in order to preserve the column width.

Thanks!!

    Range("B9").Select()
    With Selection.ListObject.QueryTable
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = False
        .RefreshPeriod = 0
        .PreserveColumnInfo = True
    End With
+4  A: 

What about something like this?

Dim excelApp AS Object = CreateObject("Excel.Application")
excelApp.Workbooks.Open(Filename:=_file)
With excelApp.ActiveWorkbook.Worksheets(0).Cells(9, 2).QueryTable
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = 1
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = False
    .RefreshPeriod = 0
    .PreserveColumnInfo = True
End With

where _file is the name of your Excel file.

Phillip Wells
A: 

Fantastic! Thanks! It works!

Pete, it's probably a good idea to accept Phillip's answer :)
Mark Nold
That would be nice. :)
Phillip Wells