0
感谢您的帮助和支持。我对excel很陌生,这可能是一个基本问题。Excel宏错误:“错误1004:应用程序违反或对象定义错误”
我想运行一个宏来将访问查询结果导出到excel。我计划自动运行宏,每周运行一次,以便将结果导出到相同的excel中,但不同的标签命名为date。我已经记录了一个宏来这样做,并尝试第二次运行该宏,并抛出错误以下。
"Error 1004: application defied or object defined error"
,并指向这行代码.ListObject.DisplayName = "Table_Speed.accdb_16"
Sub Macro_Query3()
Dim ws As Worksheet
For Each ws In Worksheets
If Left(ws.Name, 8) = Format(Now(), "mm-dd-yy") Then x = x + 1
Next
Sheets.Add.Name = Format(Now(), "mm-dd-yy") & " (" & x + 1 & ")"
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:=Array(_
"OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;Password="""";User ID=Admin;Data Source=C:\s" _
, _
"peed\Speed.accdb;Mode=Share Deny Write;Extended Properties="""";Jet OLEDB:System database="""";Jet " _
, _
"OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global" _
, _
" Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=Fal" _
, _
"se;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;" _
, "Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False"), Destination:= _
Range("$A$1")).QueryTable
.CommandType = xlCmdTable
.CommandText = Array("Final")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.SourceDataFile = _
"C:\speed\Speed.accdb"
.ListObject.DisplayName = "Table_Speed.accdb_16"
.Refresh BackgroundQuery:=False
End With
End Sub
任何帮助将不胜感激。
感谢您的快速更新,会发生什么。它仍然抛出同样的错误。当我评论该行时,它按照我的要求工作,但我不确定是否可以对此行进行评论。 –
使用.Name代替.DisplayName怎么样? – dendarii