Excel VBA файл перестает работать после инициализации формы - PullRequest
0 голосов
/ 06 июня 2018

Я инициализирую пользовательскую форму, когда пользователь дважды щелкает мышью на любой ячейке определенного листа.Файл Excel перестает работать после одной или нескольких инициализаций.Пожалуйста, помогите решить эту проблему.Форма содержит список, заполненный многомерным массивом. Этот массив заполняется значениями из диапазона ячеек, содержащего 6 столбцов и различное количество строк.Вот мой код:

Private Sub UserForm_Initialize()

    Dim lr, plr As Long
    Dim a As Variant


    Set psh = ThisWorkbook.Sheets("P")

    psh.Activate
    lr = GetFilteredRangeBottomRow() 'function to get row number of lastrow from filtered range

    psh.Range("A1:F" & lr).SpecialCells(xlCellTypeVisible).Copy

    On Error Resume Next
    psh.Range("BA1").PasteSpecial xlPasteValues
    psh.ShowAllData
    plr = psh.Columns(53).Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 'last row in column BA
    a = psh.Range("BA1:BF" & plr).Value

    With Form1.LBx 'LBx is the list box I am trying to populate
    .ColumnCount = 6
    .List = a
    End With

End Sub
...