Te anexo el código para el formulario
Dim h1, h2, cargando
'
Private Sub ComboBox1_Change()
'Por.Dante Amor
If cargando Then Exit Sub
cargando = True
ComboBox2 = ""
If ComboBox1 = "" Or ComboBox1.ListIndex = -1 Then
cargando = False
Exit Sub
End If
ComboBox2 = ComboBox2.List(ComboBox1.ListIndex)
fila = ComboBox1.ListIndex + 5
cargando = False
End Sub
'
Private Sub ComboBox2_Change()
'Por.Dante Amor
If cargando Then Exit Sub
cargando = True
ComboBox1 = ""
If ComboBox2 = "" Or ComboBox2.ListIndex = -1 Then
cargando = False
Exit Sub
End If
ComboBox1 = ComboBox1.List(ComboBox2.ListIndex)
cargando = False
'If ComboBox1.ListIndex = -1 Then Exit Sub
End Sub
'
Private Sub CommandButton1_Click()
'Por.Dante Amor
If ComboBox1 = "" Or ComboBox1.ListIndex = -1 Then
MsgBox "Captura un código"
Exit Sub
ComboBox1.SetFocus
End If
If ComboBox2 = "" Or ComboBox2.ListIndex = -1 Then
MsgBox "Captura un nombre"
Exit Sub
ComboBox2.SetFocus
End If
If TextBox1 = "" Or TextBox2 = "" Then
MsgBox "completa todos los datos"
Exit Sub
TextBox1.SetFocus
End If
'
u = h2.Range("B" & Rows.Count).End(xlUp).Row + 1
If u < 6 Then u = 6
'
h2.Cells(u, "B") = ComboBox1.Value
h2.Cells(u, "C") = ComboBox2.Value
h2.Cells(u, "D") = TextBox1.Value
h2.Cells(u, "E") = TextBox2.Value
MsgBox "Registro creado"
ComboBox1 = ""
ComboBox2 = ""
TextBox1 = ""
TextBox2 = ""
End Sub
'
Private Sub UserForm_Activate()
'Por.Dante Amor
Set h1 = Sheets("Inventario")
Set h2 = Sheets("Ventas Diarias")
For i = 5 To h1.Range("G" & Rows.Count).End(xlUp).Row
ComboBox1.AddItem h1.Cells(i, "G")
ComboBox2.AddItem h1.Cells(i, "H")
Next
End Sub
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias