Instrucción UPDATE, con varios criterios en WHERE

¿Me pueden ayudar con lo siguiente?:

Partiendo del siguiente código:

Dim StrSQL As String
StrSQL = "UPDATE [Tabla_Existencia_de_Material] SET [Tabla_Existencia_de_Material].[Cantidad] = " & Me.[Cantidad_Final].Value
StrSQL = StrSQL & " WHERE [Tabla_Existencia_de_Material]![Código]= " & Me.[Seleccion_codigo].Column(1)
CurrentDb. Execute StrSQL

¿Cómo hago para incluir el siguiente criterio?, en WHERE:

[Tabla_Existencia_de_Material]![Sector]= " ' & Me.[Sector_Seleccionar].Column(2) "'"

El cual es un campo de texto y me asignaría el valor del control "Cantidad_Final" que es un combobox al campo "Cantidad" en la tabla "Tabla_Existencia_de_Materia", si cumple con la nueva condición que quiero incluir, la cual es que el valor del control "Sector_Seleccionar" que es otro combobox, sea igual al valor del campo "Sector" en la misma tabla "Tabla_Existencia_de_Materia".

1 Respuesta

Respuesta
1

Inti: Completando el código que ya tienes el conjunto te debe quedar así.

StrSQL = "UPDATE [Tabla_Existencia_de_Material] SET [Tabla_Existencia_de_Material].[Cantidad] = " & Me.[Cantidad_Final].Value
StrSQL = StrSQL & " WHERE [Tabla_Existencia_de_Material]![Código]= " & Me.[Seleccion_codigo].Column(1) & “ AND ” & “[Tabla_Existencia_de_Material]![Sector]= ' “& Me.[Sector_Seleccionar].Column(2) & “’”

Lógicamente después va la línea para ejecutar la consulta.

Ya me contarás si te ha ido bien. Saludos >> Jacinto

Hola Jacinto gracias por responder, pero algo falta o sobra en la sintaxis, ya que toda la línea del WHERE me la muestra en rojo.

Hola nuevamente Jacinto, el problema era con las comillas, las modifiqué y quedó de la siguiente manera:

Dim StrSQL As String


StrSQL = "UPDATE [Tabla_Existencia_de_Material] SET [Tabla_Existencia_de_Material].[Cantidad] = " & Me.[Cantidad_Final].Value
StrSQL = "WHERE [Tabla_Existencia_de_Material]![Código]= " & Me.[Seleccion_codigo].Column(1) & " AND " & "[Tabla_Existencia_de_Material]![Sector]= ' " & Me.[Sector_Seleccionar].Column(1) & "'"
CurrentDb.Execute StrSQL

Pero, ahora me da error en la linea de ejecución de la consulta "CurrentDb.Execute StrSQL", ya que el valor del control "[Sector_Seleccionar].Column(1)", que es texto, me muestra en la pantalla de error el valor de esta manera: 'Norte", es decir primero comilla simple y luego comilla doble, ¿Me ayudas con el error por favor?

Saludos,

Por supuesto Inti: Miro con un poco más de atención y te contesto.

Hasta ahora >> Jacinto

Gracias.

Inti: Como primer paso quita éste espacio:

_Material]![Sector]= ' " & entre la comilla y las dobles comillas y me comentas. Si no se soluciona sigo mirando. Saludos >> Jacinto

Jacinto, ya lo hice y continua igual.

Saludos,

Inti: Veamos si con ésto concluimos.

Dim StrSQL As String
StrSQL = "UPDATE [Tabla_Existencia_de_Material] SET [Tabla_Existencia_de_Material].[Cantidad] = " & Me.[Cantidad_Final].Value
StrSQL = StrSQL & " WHERE [Tabla_Existencia_de_Material]![Código]= " & Me.[Seleccion_Codigo].Column(1) & " AND " & "[Tabla_Existencia_de_Material]![Sector]= '" & Me.[Sector_Seleccionar].Column(1) & "'"
CurrentDb. Execute StrSQL

Dime si ahora va. Saludos >> Jacinto

Estimado Jacinto, justo era lo que faltaba. Al parecer era el espacio al final de la línea, entre el valor de la columna del combobox y el &, ¿Cierto?

Gracias por tu tiempo mi hermano,

Saludos,

Inti: La verdad es que las prisas nunca son la mejor compañía de las soluciones correctas.

Aparte de lo que citas, me había dejado en el camino:

............= " & Me.[Cantidad_Final].Value
StrSQL = StrSQL & " WHERE [.............. lo que te señalo en Negrita y cursiva.

Como yo suelo decir, son las goteras de la edad. Saludos > Jacinto

¡Gracias! Que tengas buena tarde.

Te adjunto imagen, como ves la descripción que es texto debería ir en " ", al igual que el sector.

Inti: ¿De dónde sale esa imagen y para qué es?

Creí que el tema estaba resuelto. Saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas