Код запускается при запуске через VBA или Step through. Не запускается, когда макрос прикреплен к кнопке? - PullRequest
0 голосов
/ 16 июня 2020

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

Sub PrintIfNotEmpty()
    Dim ra As Range, re As Range, i As Long, R As Range
    ShInv.Rows("1:228").EntireRow.Hidden = False
    Call Entry_Point
    With ShInv
    Set ra = .Range("A20:A228")
        For Each re In ra
            If IsEmpty(re.Value) Or re.Value = vbNullString Then
            re.EntireRow.Hidden = True
            End If
        Next re
    End With
    With ShInv.PageSetup
    .Orientation = xlPortrait
    End With
    ShInv.PrintPreview

    Call Exit_Point 
End Sub

Этот код работает нормально, если я перехожу через него (F8), он работает нормально, если я нажимаю кнопку воспроизведения в разделе кодирования VBA. Как только я нажимаю кнопку, НИЧЕГО не делает. Он показывает круг, как будто думает, и говорит, что выполняет работу, но НЕТ ... На затронутом листе не происходит никаких изменений.

Я не понимаю, что делать дальше. В некоторых местах есть 228 продуктов, в некоторых - 1. Мне нужен код для адаптации рабочего листа, чтобы он печатал только то, что необходимо для инвентарного листа.

Кроме того, у меня есть список EXCEL для выбора на моей панели инструментов (ActiveX управление заблокировано для нас). Каким будет действие рабочего листа при выборе элемента из раскрывающегося списка? Это не SelectionChange, так как это действие не запускает макрос, когда выбран другой элемент в списке (ie список изменяется). Это вызывает действие только в том случае, если список изменяется, пользователь переходит на вкладку со списком, а затем снова щелкает по списку. Я просто хочу, чтобы это происходило сразу после изменения списка без дополнительных действий.

1 Ответ

0 голосов
/ 17 июня 2020

Это может быть из-за типа файла, который он сохранен как.

Попробуйте сохранить его как «двоичную книгу Excel». Может быть, это поможет вам в работе?

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