请参阅此question。它显示了一个将Excel数据格式化为Excel表格的解决方案。使用ExceL VBA以Excel格式化数据的访问表
的代码是
Sub A_SelectAllMakeTable()
Dim tbl As ListObject
Dim rng As Range
Set rng = Range(Range("A1"), Range("A1").SpecialCells(xlLastCell))
Set tbl = ActiveSheet.ListObjects.Add(xlSrcRange, rng, , xlYes)
tbl.TableStyle = "TableStyleMedium15"
End Sub
我想,我创建访问数据的Excel输出文件,然后我想类似的格式,它可以利用VBA访问该代码。这是我的代码。
Dim objXL As Object
Dim objWorkbook As Object
Dim objWorkSheet As Object
Dim sourcefilepath As String
Dim tbl As ListObject
Dim rng As Range
Set objXL = New Excel.Application
objXL.Application.Visible = False
sourcefilepath = Application.CurrentProject.Path & "\CF Break Report " & Format(Date, "mm-dd-yy") & ".xls"
Set objWorkbook = objXL.Application.Workbooks.Open(FileName:=sourcefilepath)
Set objWorkSheet = objWorkbook.Worksheets("_400_CF_BREAK_LOG")
Set rng = objWorkSheet.Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell))
Set tbl = objWorkSheet.ListObjects.Add(xlSrcRange, rng, , xlYes)
tbl.TableStyle = "TableStyleMedium2"
更新:发生故障的线路是
Set rng = objWorkSheet.Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell))
随着错误“应用程序定义或对象定义的错误
关闭“尝试 –
被关闭。复制到此网站不起作用。对不起,将更新 – FamousFrik
在行之前插入一个断点并查看tablestyle是什么。它不会被跳过,如果它不存在,所以它可能会出错,但你可能有错误陷阱跳过它 –