Исправление ошибки времени выполнения в VBA Access для экспортированного файла Excel? - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь выяснить проблему с моим кодом.

Я пытаюсь экспортировать файл в Excel и с помощью условного форматирования удалить уникальный. Когда я запускаю его в первый раз, он работает отлично.

Если я запускаю его второй раз, когда файл уже находится в папке, я получаю "ошибку времени выполнения Метод 'Rows' object_gobal 'завершился неудачно " в строке lrow = Cells(Rows.Count, 1).END(xlUp).Row Попытка пропустить эту строку просто приводит к тому же типу ошибки в следующей строке.

Я хотел бы иметь возможность запустить это и просто перезаписать или создать вторую версию файла без ошибок и продолжить условное форматирование. Я прошу это сделать.

Любая помощь будет принята с благодарностью!

'Build Retail Bump File Pass Through Query
db.QueryDefs.Delete "qryRetailBumpFile"
Set qdfPassThrough = db.CreateQueryDef("qryRetailBumpFile")
qdfPassThrough.Connect = "ODBC;DSN=SupplyChainMisc;Description=SupplyChainMisc;Trusted_Connection=Yes;DATABASE=SupplyChain_Misc;"
qdfPassThrough.ReturnsRecords = True
qdfPassThrough.Sql = StrSQL

'Create Excel File
Dim appExcel As Excel.Application
Dim myWorkbook As Excel.Workbook
Dim lrow As Long

    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "qryRetailBumpFile", "\\page\data\NFInventory\groups\CID\Company Bumps(WORK IN PROGRESS)\RETAILS\Test\" & strBrand & "\" & strSeason & "\" & strPrefix & "\" & strPrefix & " " & Format(Now(), "MM-DD-YY") & " Retail.xlsx", True

Set appExcel = CreateObject("Excel.Application")
Set myWorkbook = appExcel.Workbooks.Open("\\page\data\NFInventory\groups\CID\Company Bumps(WORK IN PROGRESS)\RETAILS\Test\" & strBrand & "\" & strSeason & "\" & strPrefix & "\" & strPrefix & " " & Format(Now(), "MM-DD-YY") & " Retail.xlsx")
appExcel.Visible = True


With myWorkbook.worksheets("qryRetailBumpFile")
lrow = Cells(Rows.Count, 1).END(xlUp).Row <-- Error here

.Range("A2:A" & lrow).Select
Selection.FormatConditions.AddUniqueValues
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
Selection.FormatConditions(1).DupeUnique = xlUnique

With Selection.FormatConditions(1).Interior
    .PatternColorIndex = xlAutomatic
    .Color = 5
    .TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
.Range("A1").Select

'Filter Color and delete
.Range("A1:M" & lrow).AutoFilter
ActiveSheet.Range("A2:M" & lrow).AutoFilter Field:=1, Criteria1:=RGB(5, 0, 0), Operator:=xlFilterCellColor

With ActiveWorkbook.Worksheets("qryRetailBumpFile")
    lr = .Cells(.Rows.Count, 1).END(xlUp).Row
    If lr < 2 Then Exit Sub
    .Cells(1, 1).Offset(1, 0).Resize(lr - 1).SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With
.Range("A1:M" & lrow).AutoFilter
End With
myWorkbook.Close

Set appExcel = Nothing
Set myWorkbook = Nothing
db.Close

Спасибо! -Deke

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...