Guardar datos de un combobox a access

Hola de nuevo mi amigo experto
/
Tengo el siguiente problema, estoy haciendo un programa donde tengo varios combobox con datos, que los puse con .additem al cargar el formulario, entonces, el problema es que cuando grabo los datos lo que me guarda aparentemente por lo que veo es el indice.
/
Entonces, lo que necesito son 2 cosas la primera: quiero tomar los datos del combo de la base de datos de access, para no tener que agregarlo por .additem y lo segundo: como puedo grabar los datos en la tabla que lo grabe con el texto no con el indice.
/
El código que utilice es este:
/
Option Explicit
Enum EACCIONConf
    AGREGAR_REGISTRO = 0
    EDITAR_REGISTRO = 1
End Enum
Public IdRegistro
Public ACCION As EACCIONConf
Private Backspaced As Boolean
Private Sub cmdGuardar_Click()
On Error GoTo ErrorSub
    ' Valida el Nombre que no este vacio
    ''''''''''''''''''''''''''''''''
    If Trim(Text1(1)) = "" Then
        MsgBox "El Nombre de registro no puede estar vacio", vbCritical, "Datos incompletos"
        Text1(1).SetFocus
        Exit Sub
    ' Valida el Apellido
    ''''''''''''''''''''''''''''''''
    ElseIf Trim(Text1(2)) = "" Then
        MsgBox "El Telefono no puede estar vacio", vbCritical, "Datos incompletos"
        Text1(2).SetFocus
        Exit Sub
    ' Valida el Agente, la Confirmacion y la Tienda
    ''''''''''''''''''''''''''''''''
    ElseIf Trim(CmbAgente.Text) = "" Then
        MsgBox "No se ha indicado el Agente", vbCritical, "Datos incompletos"
        CmbAgente.SetFocus
        Exit Sub
    ElseIf Trim(CmbConfirmacion.Text) = "" Then
        MsgBox "No se ha indicado el Tipo de Confirmacion", vbCritical, "Datos incompletos"
        CmbConfirmacion.SetFocus
        Exit Sub
    ElseIf Trim(CmbTienda.Text) = "" Then
        MsgBox "No se ha indicado la Tienda", vbCritical, "Datos incompletos"
        CmbTienda.SetFocus
        Exit Sub
    ElseIf Trim(CmbEstatus.Text) = "" Then
        MsgBox "No se ha indicado el Estatus", vbCritical, "Datos incompletos"
        CmbEstatus.SetFocus
        Exit Sub
    End If
    'Agrega el registro
    '''''''''''''''''''''''''''''''
    Select Case ACCION
    Case EDITAR_REGISTRO
        Cnn.Execute "UPDATE Confirmaciones set Agente = '" & CmbAgente.ListIndex & _
                                         "', Nom_Cliente = '" & Text1(1) & _
                                         "', TConfirmacion = '" & CmbConfirmacion.ListIndex & _
                                         "', Telefono = '" & Text1(2) & _
                                         "', Tienda = '" & CmbTienda.ListIndex & _
                                         "', No_Orden = '" & Text1(3) & _
                                         "', Estatus = '" & CmbEstatus.ListIndex & _
                                         "' where Id = " & IdRegistro & ""
    Case AGREGAR_REGISTRO
        Cnn.Execute "INSERT INTO Confirmaciones " & "(Agente,Nom_Cliente,TConfirmacion,Telefono,Tienda,No_Orden,Estatus,Fecha) VALUES('" & _
                                 CmbAgente.ListIndex & "','" & _
                                 Text1(1) & "','" & _
                                 CmbConfirmacion.ListIndex & "','" & _
                                 Text1(2) & "','" & _
                                 CmbTienda.ListIndex & "','" & _
                                 Text1(3) & "','" & _
                                 CmbEstatus.ListIndex &...
1

1 Respuesta

97.675 pts. Ingeniero de Sistema en Computación
Te dejo un ejemplo para cargar el ComboBox con un Recordset traído de una tabla de una base de datos:
Link:
http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/358-cargar-recordset-ado-en-combobox-listbox.htm
Para saber cual es el contenido de un Combo, usa la propiedad TEXT igual que un TextBox.
Si te fui de ayuda, por favor valora y cierra la pregunta, así de esa manera, puedo ayudar a más personas.
Si tienes dudas me lo haces saber.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas