Excel VBA - ShowAllData таблицы не работает - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть этот более длинный фрагмент VBA (см. Также мой предыдущий вопрос: /10579993/kopirovat-stroki-kotorye-sootvetstvuyt-kriteriyam-v-dva-ili-bolee-raznyh-lista-v-excel-s-vba).

Один конкретный фрагмент не работает должным образом. Я хочу, чтобы таблица 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

1 Ответ

0 голосов
/ 28 ноября 2018

Должно быть:

Worksheets("Orders").ListObjects("Orders").Autofilter.showalldata
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...