VBA - ошибка времени выполнения '1004' - PullRequest
0 голосов
/ 11 мая 2018

Немного контекста, это мой первый опыт программирования с использованием VBA в Excel, и я пытаюсь создать форму, заполняющую электронную таблицу.

В настоящее время я получаю сообщение об ошибке: "Ошибка во время выполнения «1004»: метод «Рабочие листы» объекта «_Global» не выполнен

Я искал в Интернете и пробовал различные решения, но я думаю, что в основном это сводится к отсутствию понимания с моей стороны.

Private Sub CommandButton1_Click()
'When pressing save, save values in spreedsheet locations
ActiveSheet.range("c8").Value = ContactName.Value
ActiveSheet.range("b19").Value = ModelNumber.Value
ActiveSheet.range("d19").Value = SerialNumber.Value
ActiveSheet.range("g19").Value = IncidentNumber.Value
ActiveSheet.range("j19").Value = Description.Value
ActiveSheet.range("c7").Value = PortLocation.Value

'save file
ActiveWorkbook.SaveAs Filename:= _
  "D:\Users\611281\Downloads\Zebra\EmailMeToZebra.xlsx", FileFormat:=xlOpenXMLWorkbook, ReadOnlyRecommended:=False, CreateBackup:=False

End 'after pressing save, close down sheet.

End Sub


Private Sub UserForm_Initialize()

Me.PortLocation.List = Worksheets("Data lookup_ports").range("e3:e200").Value

Dim MyTempWkBk As Workbook
Dim MyCurrentWin As Window

Set MyCurrentWin = ActiveWindow
Set MyTempWkBk = Workbooks.Open("D:\Users\611281\Downloads\Zebra\GUI.xlsm")
MyCurrentWin.Activate      'Allows only a VERY brief flash of the opened workbook
MyTempWkBk.Windows.Visible = False 'Only necessary if you also need to prevent
                                    'the user from manually accessing the opened
                                    'workbook before it is closed.

'Operate on the new workbook, which is not visible to the user, then close it...

End Sub

Private Sub UserForm_Terminate()
    End 'when pressing x, close down window, do not save.
End Sub

Я получаю сообщение об ошибке с кодом:

Me.PortLocation.List = Worksheets("Data lookup_ports").range("e3:e200").Value

Это просто я пытаюсь заполнить ListBox из диапазона электронных таблиц

1 Ответ

0 голосов
/ 11 мая 2018

Вы пытались назвать книгу?Это предполагает, что строка с ошибкой относится к диапазону ячеек в этой рабочей книге.Кроме того, не забудьте проверить название листа, на который вы ссылаетесь, для точного написания (если оно написано правильно, проверьте также наличие пробелов.) Кроме того, рабочий лист скрыт?Если это так, это может потребоваться добавить перед вызовом листа.

wb.sheets("Data lookup_ports").Visible = True  

Тем временем можно попробовать редактирование ниже.

Private Sub UserForm_Initialize()

Dim MyTempWkBk As Workbook
Dim MyCurrentWin As Window
Dim WB as Workbook
   Set WB = ThisWorkBook
wb.sheets("Data lookup_ports").Visible = True 

Me.PortLocation.List = WB.Sheets("Data lookup_ports").Range("E3:E200").Value



Set MyCurrentWin = ActiveWindow
Set MyTempWkBk = Workbooks.Open("D:\Users\611281\Downloads\Zebra\GUI.xlsm")
MyCurrentWin.Activate   
MyTempWkBk.Windows.Visible = False 'Only necessary if you also need to prevent
                                'the user from manually accessing the opened
                                'workbook before it is closed.

'Operate on the new workbook, which is not visible to the user, then close it...

End Sub

Private Sub UserForm_Terminate()
    End 'when pressing x, close down window, do not save.
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...