0
Я пытаюсь создать простую систему регистрации. Для этого я создал пользовательскую форму, включая один ComboBox и четыре TextBoxes. Выбор в ComboBox должен выбирать, на каком листе данные сохраняются. Код ошибки является:Активировать другой рабочий лист через ComboBox
Set ws = Worksheets("sheet")
sheet = ComboBox1.Value
Worksheets("sheet").Select
Моего общий код VBA является:
Private Sub CommandButton1_Click()
Dim iRow As Long
Dim ws As Worksheet
Dim sheet As String
Set ws = Worksheets("sheet")
sheet = ComboBox1.Value
Worksheets("sheet").Select
' Verify if First Name is available
If Trim(Me.TextBox1.Value) = "" Then
Me.TextBox1.SetFocus
MsgBox "Voornaam ontbreekt"
Exit Sub
End If
' Verify if Last Name is available
If Trim(Me.TextBox2.Value) = "" Then
Me.TextBox2.SetFocus
MsgBox "Achternaam ontbreekt"
Exit Sub
End If
' Verify if Klasse is available
If Trim(Me.ComboBox1.Value) = "" Then
Me.ComboBox1.SetFocus
MsgBox "Klasse ontbreekt"
Exit Sub
End If
' Verify if Paard is available
If Trim(Me.TextBox4.Value) = "" Then
Me.TextBox4.SetFocus
MsgBox "Naam paard ontbreekt"
Exit Sub
End If
'find first empty row in database
iRow = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
'copy the data to the database
ws.Cells(iRow, 1).Value = Me.TextBox1.Text
ws.Cells(iRow, 2).Value = Me.TextBox2.Text
ws.Cells(iRow, 3).Value = Me.ComboBox1.Text
ws.Cells(iRow, 4).Value = Me.TextBox4.Text
ws.Cells(iRow, 5).Value = Me.TextBox5.Text
'clear the data in all textbox
Dim ctl
For Each ctl In Me.Controls
If TypeOf ctl Is MSForms.TextBox Then
ctl.Text = ""
End If
Next ctl
End Sub
Private Sub UserForm_Initialize()
With ComboBox1
.AddItem "0,80 m"
.AddItem "0,90 m"
.AddItem "1 m"
.AddItem "1,10 m"
.AddItem "1,20 m"
.AddItem "1,30 m"
End With
End Sub
Какой проблема, с которой вы сталкиваетесь? – tguzella
Сначала вы устанавливаете variale, а затем используете его: sheet = ComboBox1.Value Установить ws = Рабочие листы («лист») Рабочие листы («лист»). Выберите – Fabrizio
Вы говорите, что 'sheet' является листом, а затем пытается сказать, что он равен 'ComboBox1.Value' – Calum