Ошибка времени выполнения VBA -2147319767 (80028029) в функции Publi c - PullRequest
0 голосов
/ 10 февраля 2020

Эта ошибка появилась сегодня в следующем коде:

Public lngLast_CS_Sheet As Long
Public lngCS1_Index As Long
Public lngCSLast_Index As Long
Public Function num_CSx_Sheets()        'Function to find total number of CS Sheets
    Dim w As Long, cs As Long
    For w = 1 To Sheets.Count
        cs = cs - CBool(UCase(Left(Sheets(w).Name, 2)) = "CS")
    Next w
    num_CSx_Sheets = cs
End Function

Эта функция работала нормально в течение нескольких лет, но выдает ошибку, когда w = 17 & cs = 4

Я проверил диапазон листов CS для неправильного именования пользователей, но не могу найти никаких проблем.

Функция вызывается с помощью следующего кода:

Sub BoMLookUpMaterials_2019_Rev_B()
'
' BoMSearch CS Sheets Macro - Modified 11/01/19 - PRS
'
Dim FirstSheet As Integer
Dim LastSheet As Integer
Dim LastRow As Integer
Dim FirstRow As Integer
Dim ItemQTY As Single
Dim sSheetName As String
Dim sItemName As String

With ActiveSheet
    LastRow = Cells(.Rows.Count, "Q").End(xlUp).Row                      'Find last row of BoM (Qty) Col Q
End With
'
sSheetName = ActiveSheet.Name                                            'Get sheet name of active Database sheet
'
lngLast_CS_Sheet = num_CSx_Sheets()                                     'Find total number of CS sheets
lngCS1_Index = Sheets("CS1").Index                                      'CS1 Sheet Index No.
lngCSLast_Index = Sheets("CS" & lngLast_CS_Sheet).Index                 'Last CS Sheet Index No.

Select Case sSheetName                                                  'Determines which BoM sheet initiated Update BOM procedure

Я не опытный Программист VBA и не может понять, почему это происходит сейчас. Может ли кто-нибудь указать мне правильное направление?

1 Ответ

0 голосов
/ 11 февраля 2020

Я не думаю, что это проблема с кодом, поскольку при дальнейшем тестировании, когда lngLast_CS_Sheet равно числу листов CS в рабочей книге, код выполняется без ошибок. Эта ошибка произошла только в этой книге, а не в других с точно такими же модулями кода. Поэтому я делаю вывод, что это ошибка пользователя в какой-то части рабочей книги, которую я отследю и отследю

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