Ошибка method range of object _global failed - VBA (48515)

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. Dim AAAC As Long
  2. Dim strSuchen As Variant
  3. Private Sub ComboBox1_Change()
  4. If ComboBox1.Value <> "" Then
  5. strSuchen = ComboBox1.Value
  6. AAAC = CDbl(Range("A2:A10").Find(What:=strSuchen, lookat:=xlWhole).Row)
  7. TextBox1.Text = Cells(AAAC, 2)
  8. TextBox2.Text = Cells(AAAC, 4)
  9. TextBox3.Text = Cells(AAAC, 5)
  10. Else
  11. TextBox1.Text = ""
  12. TextBox2.Text = ""
  13. TextBox3.Text = ""
  14. End If
  15. End Sub
  16. Private Sub ComboBox2_Change()
  17. If ComboBox2.Value <> "" Then
  18. strSuchen = ComboBox2.Value
  19. AAAC = CDbl(Range("A2:A40").Find(What:=strSuchen, lookat:=xlWhole).Row)
  20. TextBox4.Text = Cells(AAAC, 2)
  21. TextBox5.Text = Cells(AAAC, 4)
  22. TextBox6.Text = Cells(AAAC, 5)
  23. Else
  24. TextBox4.Text = ""
  25. TextBox5.Text = ""
  26. TextBox6.Text = ""
  27. End If
  28. End Sub
  29. Private Sub CommandButton2_Click()
  30. UserForm1.Hide
  31. End Sub
  32. Private Sub UserForm_Initialize()
  33. Dim sFilePath, objXL, Secur
  34. sFilePath = ActiveDocument.Path & "\qw.xlsx"
  35. Set objXL = CreateObject("Excel.Application")
  36. 'objXL.Visible = True
  37. Set wc = objXL.Workbooks.Open(sFilePath)
  38. ComboBox1.List = wc.Worksheets("A").Range("A2:A10").Value
  39. ComboBox2.List = wc.Worksheets("A").Range("A2:A40").Value
  40. objXL.Quit
  41. End Sub
Подскажите пожалуйста, что не так? Почему ошибка method range of object _global failed?

Решение задачи: «Ошибка method range of object _global failed»

textual
Листинг программы
  1. Private Sub UserForm_Initialize()
  2.     With CreateObject("Excel.Application")
  3.          With .Workbooks.Open(ActiveDocument.Path & "\qwe.xlsx", 0)
  4.               ComboBox1.List = .Worksheets("A").Range("A2:D4").Value
  5.               ComboBox2.List = .Worksheets("A").Range("A2:D40").Value
  6.               .Close False
  7.          End With
  8.          .Quit
  9.     End With
  10. End Sub
  11.  
  12. Private Sub ComboBox1_Change()
  13.     LetTextBox ComboBox1
  14. End Sub
  15.  
  16. Private Sub ComboBox2_Change()
  17.     LetTextBox ComboBox2
  18. End Sub
  19.  
  20. Private Sub LetTextBox(comboBox As MSForms.comboBox)
  21.     With comboBox
  22.          If .ListIndex > -1 Then
  23.             TextBox4.Text = .List(.ListIndex, 1)
  24.             TextBox5.Text = .List(.ListIndex, 2)
  25.             TextBox6.Text = .List(.ListIndex, 3)
  26.          Else
  27.             TextBox4.Text = ""
  28.             TextBox5.Text = ""
  29.             TextBox6.Text = ""
  30.          End If
  31.     End With
  32. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут