Obtener datos de textbox según un indice

A ver si me puedes ayudar, mi caso es el siguiente
tengo 3 textbox, t1, t2, y t3, y quiero guardar los valores en una tabla que tiene 3 campos texto1, texto2 y texto3 y tengo un botón que hace lo siguiente:
Dim rs As New ADODB.Recordset
Dim total As String
Dim indice As String
total = 3
indice = 1
rs.Open "NOMBRE_TABLA", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
rs.AddNew
Do While indice <= total
rs("Texto" & indice) = "T" & cantidad & ".text"
indice = indice + 1
rs.Update
Loop
rs.Close
He probado esto y otras combinaciones sin éxito, Así lo más que he conseguido es que me guarde el valor t1.text en la columna texto1 t2.text en la columna texto2 y t3.text en la columna t3
¿Cómo hago referencia al valor del cuadro t1.text?
Respuesta
1
Estuve probando y lo hice utilizando la colección de Controles y verificar que sea tipo TextBox para agregar cada valor del textbox en el rs de datos.
El código sería más o menos (en un evento al hacer click):
Dim rs As New ADODB.Recordset
Dim total, texto As String
Dim indice As String
Dim control As control
Dim valor_textbox
total = 3
indice = 1
Rs.Open "nombre_de_tabla", CurrentProject. Connection, adOpenKeyset, adLockOptimistic
rs. AddNew

'recorre la colección de controles
For Each control In Me.Form.Controls
       If TypeOf control Is textbox Then
          valor_textbox = control.Value
          rs("Texto" & indice) = valor_textbox
          indice = indice + 1
       End If
Next
rs.Update
Rs. Close
Podría agregar también una validación mediante If... Then... Else para validar el nombre del control y agregar el dato que corresponde a esa tabla. Ej. el valor del textbox t1 debe ir en el campo Texto1, entonces ahí podrías validar el Text. Name del textbox t1.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas