[英]Excel VBA - ShowAllData of table fails
我有更长的VBA(另请参阅我以前的问题: https : //stackoverflow.com/questions/53206850/copy-rows-which-match-criteria-into-two-or-more-different-sheets-in- excel-with-v) 。
一件特别的东西不能正常工作。 我想要一个表ShowAllData ,只要它已执行模块中以前的动作即可。 到目前为止,只要我是从表的某个单元格中 运行时,只要运行该代码,它就可以正常工作 。 当我从工作表的另一个地方运行它时,它不会再显示所有数据 。 它一直挂在表的过滤模式下。
Sub CopyOrders()
'Sorting column STOCK in ORDERS from A-Z
Worksheets("Orders").ListObjects("Orders").Sort. _
SortFields.Clear
Worksheets("Orders").ListObjects("Orders").Sort. _
SortFields.Add2 Key:=Range("Orders[[#All],[STOCK]]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With Worksheets("Orders").ListObjects("Orders").Sort
.Apply
End With
'Delete all rows from table NoStockOrders
On Error Resume Next
Worksheets("NoStockOrders").ListObjects("NoStockOrders").DataBodyRange.EntireRow.Delete
'Copy all orders which have no stock to
'the sheet NoStockOrders
Worksheets("Orders").Range("ORDERS").AutoFilter _
Field:=6, Criteria1:="0", VisibleDropDown:=True
On Error Resume Next
Worksheets("Orders").Range("ORDERS").SpecialCells _
(xlCellTypeVisible).Copy
Range("NoStockOrders").PasteSpecial _
Paste:=xlPasteValues
If Worksheets("Orders").ListObjects("Orders").FilterMode Then
Worksheets("Orders").AutoFilter.ShowAllData
End If
它应该是:
Worksheets("Orders").ListObjects("Orders").Autofilter.showalldata
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.