** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Insert into condicional al contenido de cuadro com
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoInsert into condicional al contenido de cuadro com

 Responder Responder
Autor
Mensaje
damian_colomb Ver desplegable
Habitual
Habitual


Unido: 08/Febrero/2021
Localización: Argentina
Estado: Sin conexión
Puntos: 83
Enlace directo a este mensaje Tema: Insert into condicional al contenido de cuadro com
    Enviado: 05/Abril/2021 a las 08:38
Hola! Sigo molestando por acá, doy un paso y aparecen problemas por resolver! Creo que es un poco lo adictivo de esto!!

Tengo un formulario, dónde a través de un botón con insert to, registro en una tabla un cod_id que lo uso para relacionar con otra tabla y un motivo. Los datos registrados están en un formulario:
El cod_informe en un cuadro de texto(me trae el último valor del id que se registro en la tabla relacionada) es el que uso de enlace.
Y el motivo de consulta está en un cuadro combinado. Le hice 3 cuadros combinados y para evitar la limitante de si un día necesito agregar más de 3, al finalizar la instrucción, le agregué un msgbox con si/no cancelar, que me pregunta si quiero agregar más motivos, si la respuesta es si, se insertan los datos y se vuelve abrir el formulario, si la respuesta es no, pasa a otro formulario y si es cáncelar cierra el msgbox.

Ahora esto funciona bien, con el detalle, si yo completo un solo cuadro combinado, me agrega a la tabla los otros dos cod_id, con el campo motivo vacío. Es decir me está registrando los cuadros combinados que no tienen contenido.

Pensé que por ahí usando un condicional como ID not null, iba a poder solucionarlo, pero me da error que no se encuentra el objeto.
Probé con casé y tampoco pude

If cc.motivo1.value is not null then
Insert to tabla (campos) value (objetos)
End if

No escribí completo el insert to, porque estoy justo con el celular y es la parte que funciona, no tengo problemas.

En resumen, porque si di demasiado detalle que embrollo el asunto, necesito encontrar la forma de insertar en una tabla solo los registros provenientes de los cuadros combinados que tengan contenido.

Muchas gracias

Editado por damian_colomb - 05/Abril/2021 a las 08:40
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 12529
Enlace directo a este mensaje Enviado: 05/Abril/2021 a las 09:00
Debería valerte con:

If Nz(me.CuadroCombinado, "") <> "" then
   INSERT ...
End If


Acostumbrate al uso del Nz que te quitará más de un problema. Por cierto no uses (.) (,) (blanco) (caracteres especiales) en los nombres de los campos, tanto de formularios como de tablas, te ahorrarás muuuuchos problemas.


Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
damian_colomb Ver desplegable
Habitual
Habitual


Unido: 08/Febrero/2021
Localización: Argentina
Estado: Sin conexión
Puntos: 83
Enlace directo a este mensaje Enviado: 05/Abril/2021 a las 13:32
Buen día Mihura funcionó a la perfección!! Muchísimas gracias! Ahora voy a leer un poco acerca del NZ "">< que no conocía!

Si con la aclaración de abajo te referis al "cc.motivo", fue un error del celular, muchas gracias por la sugerencia, no uso esos caracteres en los nombres de los campos, utilizo más el _ para separar! Por ahí terminan siendo muy descriptivos los nombres de los objetos y formularios, pero para mi que estoy arrancando en esto, se me hace más fácil leerlos!
Por ejemplo cc_motivo_frm_informe
Si la sugerencia viene por otro lado que no me doy cuenta, házmelo saber por favor!!

Muchísimas gracias, esta resuelta mi duda
Se puede cerrar
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 12529
Enlace directo a este mensaje Enviado: 05/Abril/2021 a las 13:57
Usar el _ es una manera, a mi que me gusta teclear lo menos posible uso mayúculas / minúsculas y el resultado es bueno (por lo menos se lee perfectamente):

Me.FechaInicial
Me.CodMotivoInforme
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable