Объявление листа идет не так - PullRequest
0 голосов
/ 10 июля 2020

Я использую vba какое-то время и заметил неприятную ошибку. Когда я использую более 1 листа в макросе, если я устанавливаю рабочие листы, все работает нормально, пока я не получу сообщение об ошибке. После этого имена рабочих листов перепутаны и обычно используются оба объявления для одного листа.

Dim loc_path, sp_path As String
Dim loc_wb As Workbook
Dim sp_wb As Workbook
Dim loc_ws As Worksheet
Dim sp_ws As Worksheet


loc_path = "path1"
sp_path = "path2"
Set sp_wb = Workbooks.Open(sp_path, ReadOnly:=False)
Set sp_ws = sp_wb.Sheets(1)
Set loc_wb = Workbooks.Open(loc_path, ReadOnly:=False)
Set loc_ws = loc_wb.Sheets(1)

После этого я просто вызываю другой макрос и передаю рабочий лист или листы. В примере я передаю макросу только sp_ws и отображаю значение первой ячейки в msgbox. До ошибки он работает нормально, но после ошибки, если я запустил его снова, он отобразит значение первых ячеек листов loc_ws.

Что-то не так с моим кодом или это просто ошибка в VBA?

...