Access - MODIFICAR VALORES EN TABLA

 
Vista:

MODIFICAR VALORES EN TABLA

Publicado por HAKAMIN (5 intervenciones) el 18/11/2005 20:39:05
Hola at odos. Os resumo el problema.

Tengo una tabla con tres campos, nombre (tipo texto), si/no (tipo si/no) y cantidad (tipo numerico), Pues bien quiera que desde un formulario pulsando un boton que ejecute una macro o mudulo me haga lo siguiente:

Todos los registros que en el campo "si/no" este como verdarero los pase a falso y que en todos los registros cuyo campo "cantidad" sea distinto de 0 que lo sustituya por 0.

Espero que no sea muy complicado.

Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:MODIFICAR VALORES EN TABLA

Publicado por 2pl (773 intervenciones) el 19/11/2005 16:12:03
Create una consulta de actualización con esos criterios y listo....
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MODIFICAR VALORES EN TABLA

Publicado por HAKAMIN (5 intervenciones) el 19/11/2005 20:46:03
Primero gracias por tu respuesta, pero podrias ser mas concreto ya que mis conocimientos son algo bajos. Explicame un poco como lo harias.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MODIFICAR VALORES EN TABLA

Publicado por Enrique (1299 intervenciones) el 20/11/2005 13:21:51
Hola:
Otra alternativa a las consultas de actualizacion es actuar directamente sobre la Tabla, sin usar ninguna consulta. Lo primero de todo cambia en la Tabla el nombre del campo Si/No por SiNo (sin la barra enmedio), luego en la Ventana Referencias, marca la referencia: Microsoft DAO 3.6 Object Library, por último copia y pega este Evento en "Al hacer Click" de un botón de comando en un Form:

Private Sub NombreBoton_Click()
Dim rstSiNo, rstCant As DAO.Recordset
Set rstSiNo = CurrentDb.OpenRecordset("Select SiNo From Tabla1 Where SiNo =True", dbOpenDynaset)
Set rstCant = CurrentDb.OpenRecordset("Select Cantidad From Tabla1 Where Cantidad >0", dbOpenDynaset)
rstSiNo.MoveFirst
While Not rstSiNo.EOF
rstSiNo.Edit
rstSiNo!SiNo = False
rstSiNo.Update
rstSiNo.MoveNext
Wend

rstCant.MoveFirst
While Not rstCant.EOF
rstCant.Edit
rstCant!Cantidad = 0
rstCant.Update
rstCant.MoveNext
Wend
End Sub

Lo que hace este Evento es, primero restringir los registros a sólo los que cumplen las condiciones (SiNo = Verdadedo y Cantidad > 0) y despues los recorre en la Tabla y los cambia.

Saludos y suerte.
Enrique
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MODIFICAR VALORES EN TABLA

Publicado por HAKAMIN (5 intervenciones) el 20/11/2005 17:22:48
Gracias probare lo que me dices esta semana. Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

VENTANA REFERENCIAS?

Publicado por HAKAMIN (5 intervenciones) el 20/11/2005 17:41:48
Cual es la ventana referencias. gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

YA ESTA ¡¡FUNCIONA!!

Publicado por HAKAMIN (5 intervenciones) el 20/11/2005 17:53:56
Bueno pues eso ya esta funcionando. Mil gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:YA ESTA ¡¡FUNCIONA!!

Publicado por Enrique (1299 intervenciones) el 21/11/2005 14:51:29
Hola Hakamin:
Me alegro que te funcione, ya veo que has sabido encontrar por tu cuenta la "Ventana de Referencias". Se me olvidó decirte que al finalizar la actualización es conveniente cerrar los Recordset. Inserta esta línea entre el último Wend y End Sub:

rstSiNo.Close: Set rstSino = Nothing: rstCant.Close: Set rstCant = Nothing

Un saludo
Enrique
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar