Registros de useforms pasarlos a hoja
Como le puedo hacer para pasar todos los labels y comboboxs de de mi formulario a una hoja determinada al apretar el botón guardar, ya tengo el código solo que este me pasa solo una fila.
De antemano muchas gracias por su ayuda.
Option Explicit
Private Sub TEMAS_AfterUpdate()
Dim FILA, FINAL, I, COLUMNA, I2, FINAL2 As Long
Dim LISTA As String
'ENCONTRAR LA ULTIMA COLUMNA OCUPADA
COLUMNA = 3
Do While Hoja2.Cells(1, COLUMNA) <> Empty
COLUMNA = COLUMNA + 1
Loop
FINAL = COLUMNA - 1
'LIMPIA EL COMBOBOX SUBTEMAS
SUBTEMAS.Clear
'HACE UN RECORRIDO EN TODOS LOS CAMPOS DE LOS TEMAS
For I = 3 To FINAL
'COMPARA EL DATO QUE SE ELIGIÓ EN EL COMBOBOX TEMAS CON EL DATO QUE SE ENCUENTRA EN LA INTENTAR DE LA COLUMNA RECORRIDA
If TEMAS = Hoja2.Cells(1, I) Then
'ENCONTRAR LA ULTIMA FILA OCUPADA, EN LA COLUMNA DE LA VARIABLE I
FILA = 2
Do While Hoja2.Cells(FILA, I) <> Empty
FILA = FILA + 1
Loop
FINAL2 = FILA - 1
'HACE UN RECORRIDO EN LAS FILAS PERTENECIENTES A LA COLUMNA CON LA VARIABLE I
For I2 = 2 To FINAL2
LISTA = Hoja2.Cells(I2, I)
SUBTEMAS.AddItem (LISTA)
Next I2
End If
Next I
End Sub
Private Sub UserForm_Initialize()
Dim FILA, FINAL, I As Long
Dim LISTA As String
'ComboBox1.AddItem "COMBOBOX"
'ComboBox1.AddItem "LISTBOX"
'ComboBox1.AddItem "CHECKBOX"
'ComboBox1.AddItem "OPTIONBUTTON"
FILA = Hoja2.Range("A" & Rows.Count).End(xlUp).Row + 1
FINAL = FILA - 1
For I = 2 To FINAL
LISTA = Hoja2.Cells(I, 1)
TEMAS.AddItem (LISTA)
Next I
End Sub
'Botón Guardar
Private Sub CommandButton1_Click()
Dim NombreHoja As String
Dim HojaDestino As Range
Dim NuevaFila As Integer
NombreHoja = Me.TEMAS.Value
Set HojaDestino = ThisWorkbook.Sheets(NombreHoja).Range("A1").CurrentRegion
NuevaFila = HojaDestino.Rows.Count + 1
With ThisWorkbook.Sheets(NombreHoja)
.Cells(NuevaFila, 1).Value = Me.TEMAS.Value
.Cells(NuevaFila, 2).Value = Me.SUBTEMAS.Value
.Cells(NuevaFila, 2).Value = CDate(SUBTEMAS.Text)
.Cells(NuevaFila, 3).Value = Me.Label14
.Cells(NuevaFila, 4).Value = Me.TextBox1.Value
.Cells(NuevaFila, 5).Value = Me.TextBox2.Value
.Cells(NuevaFila, 6).Value = Me.TextBox3.Value
.Cells(NuevaFila, 7).Value = Me.TextBox4.Value
.Cells(NuevaFila, 8).Value = Me.ComboBox3.Value
.Cells(NuevaFila, 1).Value = Me.TEMAS.Value
.Cells(NuevaFila, 2).Value = Me.SUBTEMAS.Value
.Cells(NuevaFila, 2).Value = CDate(SUBTEMAS.Text)
.Cells(NuevaFila, 3).Value = Me.Label15
.Cells(NuevaFila, 4).Value = Me.TextBox5.Value
.Cells(NuevaFila, 5).Value = Me.TextBox2.Value
.Cells(NuevaFila, 6).Value = Me.TextBox7.Value
.Cells(NuevaFila, 7).Value = Me.TextBox8.Value
.Cells(NuevaFila, 8).Value = Me.ComboBox5.Value
.Cells(NuevaFila, 1).Value = Me.TEMAS.Value
.Cells(NuevaFila, 2).Value = Me.SUBTEMAS.Value
.Cells(NuevaFila, 2).Value = CDate(SUBTEMAS.Text)
.Cells(NuevaFila, 3).Value = Me.Label16
.Cells(NuevaFila, 4).Value = Me.TextBox9.Value
.Cells(NuevaFila, 5).Value = Me.TextBox10.Value
.Cells(NuevaFila, 6).Value = Me.TextBox11.Value
.Cells(NuevaFila, 7).Value = Me.TextBox12.Value
.Cells(NuevaFila, 8).Value = Me.ComboBox13.Value
End With
MsgBox "Alta exitosa.", vbInformation, "EXCELeINFO"
Unload Me
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub