Требуется объект Excel

#excel

#excel

Вопрос:

Я пытаюсь добавить запись на свой рабочий лист с помощью формы. Когда я нажимаю на командную кнопку (Добавить запись), мне предлагается «требуемый объект».

 Private Sub CommandButton2_Click()
    Dim wks As Worksheet
    Dim AddNew As Range
    Set wks = Sheet1
    Set AddNew = wks.Range("A65356").End(xlUp).Offset(1, 0)

    AddNew.Offset(0, 0).Value = TextBoxProductCode.Text 
    AddNew.Offset(0, 1).Value = TextBoxProductName.Text
    AddNew.Offset(0, 2).Value = TextBoxDescription.Text
    AddNew.Offset(0, 3).Value = TextBoxCustomerName.Text
    AddNew.Offset(0, 4).Value = TextBoxBottlesRequested.Text
    AddNew.Offset(0, 5).Value = TextBoxDateReceived.Text
    AddNew.Offset(0, 6).Value = TextBoxRequestedETD.Text
    AddNew.Offset(0, 7).Value = TextBoxEnteredBy.Text
    AddNew.Offset(0, 8).Value = TextBoxDate.Text    
End Sub
  

Комментарии:

1. Кто вам это предложил required object ? IDE? Excel? И как это отображалось? Возможно, скриншот поможет.

2. Есть ли причина, по которой вы выполняете двойное смещение?

3. Я новичок в основах Visual, поэтому я немного сбился с пути, но если вы, ребята, сможете мне помочь, это было бы здорово

4. Привет, Марвин, итак, я запускаю форму, нажимаю на кнопку добавить запись, затем я получаю запрос

Ответ №1:

Ваш код не может «видеть» переменные, подобные TextBoxProductCode, поскольку они не Dim редактируются и Set не входят в область подраздела.

Комментарии:

1. итак, что мне делать?

Ответ №2:

@Joe, обязательно проверь название своих текстовых полей. в вашем коде должно быть то же самое. Кроме того, попробуйте изменить диапазон вашего addnew.

вместо:

 `Set AddNew = wks.Range("A65356").End(xlUp).Offset(1, 0)`
  

попробуйте приведенный ниже код:

 `Set AddNew = wks.Range("A1").End(xlUp).Offset(1, 0)`
  

таким образом, он будет начинаться со столбца A1 и добавлять значение в первую пустую ячейку.