Actualizacion de Datos

17/10/2005 - 04:21 por Jonathan Milla | Informe spam
Muy buenos dias, una consulta, tengo un listado en Excel funcionando como
una base de datos, en el mismo libro tengo una hoja donde me muestra los
campos correspondientes al registro que quiero visualizar.

Ejemplo:
A1 'Escribo el criterio de busqueda para que me muestre en las siguientes
celdas A2 y A3
Con una formula mas o menos asi en las celdas anteriores
=SI(A1<1,"",INDICE([Archivo.xls]datos'!$A$2:$E$50,COINCIDIR(A1,'[Archivo.xls]datos'!$B$2:$B$0,0),1))

A2 'Me muestra Nombre
A3 'Me muestra la edad

me gustaria una idea de como puedo cambiar un valor del registro que estoy
visualizando por ejemplo la edad y que se actualice en en listado, no se si
creando un formulario pero como busco y cambio, ese es mi dolor de cabeza,
les agradeceria su apoyo.

Jonathan.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
17/10/2005 - 05:16 | Informe spam
hola, Jonathan !

... tengo un listado... como... base de datos
... mismo libro... una hoja... me muestra los campos correspondientes al registro que quiero visualizar.
Ejemplo:
A1 'Escribo el criterio de busqueda para que me muestre en las siguientes celdas A2 y A3
Con una formula mas o menos asi en las celdas anteriores
=SI(A1<1,"",INDICE([Archivo.xls]datos'!$A$2:$E$50,COINCIDIR(A1,'[Archivo.xls]datos'!$B$2:$B$0,0),1))
A2 'Me muestra Nombre
A3 'Me muestra la edad
... como puedo cambiar un valor del registro que estoy visualizando por ejemplo la edad y que se actualice en en listado [...]



1) comentas que ambas hojas son del mismo libro... PERO pones de ejemplo una formula donde 'aparece' el nombre de libro -?-
[eso pudiera significar que se trata de libros diferentes] :))

2) suponiendo que los codigos que buscas segun 'A1' se encuentran en el otro libro [u hoja 'datos'] en el rango 'A2:A50'
y que el rango para las edades esta [en la otra hoja/libro] en el rango 'C2:C50'
y que la nueva edad' la pones [en la misma hoja donde buscas el dato de 'A1'] en la celda 'B3'...
prueba con una macro +/- como la siguiente...
en un modulo de codigo 'normal' y que 'ejecutas' desde el mismo libro donde obtienes los resultados ==Sub CambiarDato()
Dim Fila As Long
With Workbooks("Archivo.xls").Worksheets("datos")
Fila = Application.Match(Range("a1"), .Range("a2:a50"), 0)
.Range("c2:c50").Cells(Fila) = Range("b3")
End With
End Sub

seguramente hara falta mas que un 'ligero' ajuste :(( [pero no das suficiente informacion] :))

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Jonathan Milla
17/10/2005 - 18:47 | Informe spam
Ok, Miguel, agradezco tu atencion y lo explicare mejor
Tengo un listado con los siguientes campos

Libro:Visor.xls Hoja:Datos

ID (Columna A1)
Nombre (Columna B1)
Edad (Columna C1)

Ejemplo:
A B C
ID Nombre Edad
1 2233 Carlos 33
2 4455 Luis 2
3 6677 Juan 5
4 8899 Pedro 14
5 1144 Jose 16


Tengo otra Hoja(Visor) donde veo estos datos dependiento su "ID"
Ejemplo:
En la Celda A1 pongo el criterio de busqueda

En la celdas A3, B3 y C3.
Se extraen los datos con la siguiente formula en cada una de ella
respectivamente
=SI(A1<1,"",INDICE(datos!A1:C6,COINCIDIR(Hoja1!A1,datos!C1:C6,0),3))
y aque las celdas A2, B2 y C2 contienen los encabezados

mi solicitud es que, si necesito cambiar algun dato de uno de ellos,
se haga automaticamente en el listado Hoja(Datos), pero no puedo hacerlo en
la
Hoja(Visor), pues las celdas contienen formulas, bueno mas bien en las
celdas
donde me muestran los valores correspondientes, talvez en las celdas
E2, F2 y G2 poner el valor del campo que se quiera cambiar
E1, F1 y G1 continen los encabezados, ID, Nombre y Edad,
contemplando las que esten vacias no se ejecute el cambio.

Algun formulario o directamente de un boton...gracias por tu atencion.


"Héctor Miguel" escribió en el mensaje
news:
hola, Jonathan !

... tengo un listado... como... base de datos
... mismo libro... una hoja... me muestra los campos correspondientes al
registro que quiero visualizar.
Ejemplo:
A1 'Escribo el criterio de busqueda para que me muestre en las siguientes
celdas A2 y A3
Con una formula mas o menos asi en las celdas anteriores
=SI(A1<1,"",INDICE([Archivo.xls]datos'!$A$2:$E$50,COINCIDIR(A1,'[Archivo.xls]datos'!$B$2:$B$0,0),1))
A2 'Me muestra Nombre
A3 'Me muestra la edad
... como puedo cambiar un valor del registro que estoy visualizando por
ejemplo la edad y que se actualice en en listado [...]



1) comentas que ambas hojas son del mismo libro... PERO pones de ejemplo
una formula donde 'aparece' el nombre de libro -?-
[eso pudiera significar que se trata de libros diferentes] :))

2) suponiendo que los codigos que buscas segun 'A1' se encuentran en el
otro libro [u hoja 'datos'] en el rango 'A2:A50'
y que el rango para las edades esta [en la otra hoja/libro] en el rango
'C2:C50'
y que la nueva edad' la pones [en la misma hoja donde buscas el dato de
'A1'] en la celda 'B3'...
prueba con una macro +/- como la siguiente...
en un modulo de codigo 'normal' y que 'ejecutas' desde el mismo libro
donde obtienes los resultados ==> Sub CambiarDato()
Dim Fila As Long
With Workbooks("Archivo.xls").Worksheets("datos")
Fila = Application.Match(Range("a1"), .Range("a2:a50"), 0)
.Range("c2:c50").Cells(Fila) = Range("b3")
End With
End Sub

seguramente hara falta mas que un 'ligero' ajuste :(( [pero no das
suficiente informacion] :))

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Respuesta Responder a este mensaje
#3 Héctor Miguel
17/10/2005 - 20:46 | Informe spam
hola, Jonathan !

... listado con los siguientes campos: Libro:Visor.xls Hoja:Datos
ID (Columna A1)
Nombre (Columna B1)
Edad (Columna C1) [...]
... si necesito cambiar algun dato... automaticamente en el listado Hoja(Datos)
... talvez en las celdas E2, F2 y G2 poner el valor del campo que se quiera cambiar
... contemplando las que esten vacias no se ejecute el cambio [...]



con una ligera variacion al codigo propuesto anterior... prueba con la siguiente macro:
[adapta los parametros que fueran necesarios por si hubiera 'cambios de criterios'] ;)

Sub CambiarDato()
Dim Fila As Long
With Worksheets("datos")
Fila = Application.Match(Range("a1"), .Range("a:a"), 0)
If Not IsEmpty(Range("e3")) Then .Range("a" & Fila) = Range("e3"): _
Range("a1") = Range("e3")
If Not IsEmpty(Range("f3")) Then .Range("b" & Fila) = Range("f3")
If Not IsEmpty(Range("g3")) Then .Range("c" & Fila) = Range("g3")
End With
End Sub

saludos,
hector.
Respuesta Responder a este mensaje
#4 Jonathan Milla
17/10/2005 - 22:37 | Informe spam
Me marca que no coinciden los tipos
Fila = Application.Match(Range("a1"), .Range("a:a"), 0) 'En esta linea



"Héctor Miguel" escribió en el mensaje
news:
hola, Jonathan !

... listado con los siguientes campos: Libro:Visor.xls Hoja:Datos
ID (Columna A1)
Nombre (Columna B1)
Edad (Columna C1) [...]
... si necesito cambiar algun dato... automaticamente en el listado
Hoja(Datos)
... talvez en las celdas E2, F2 y G2 poner el valor del campo que se
quiera cambiar
... contemplando las que esten vacias no se ejecute el cambio [...]



con una ligera variacion al codigo propuesto anterior... prueba con la
siguiente macro:
[adapta los parametros que fueran necesarios por si hubiera 'cambios de
criterios'] ;)

Sub CambiarDato()
Dim Fila As Long
With Worksheets("datos")
Fila = Application.Match(Range("a1"), .Range("a:a"), 0)
If Not IsEmpty(Range("e3")) Then .Range("a" & Fila) = Range("e3"): _
Range("a1") = Range("e3")
If Not IsEmpty(Range("f3")) Then .Range("b" & Fila) = Range("f3")
If Not IsEmpty(Range("g3")) Then .Range("c" & Fila) = Range("g3")
End With
End Sub

saludos,
hector.

Respuesta Responder a este mensaje
#5 Héctor Miguel
17/10/2005 - 23:14 | Informe spam
hola, Jonathan !

Me marca que no coinciden los tipos
Fila = Application.Match(Range("a1"), .Range("a:a"), 0) 'En esta linea



-> probablemente necesites modificar a lo siguiente...
Fila = Application.Match(Range("a1"), .Range("c:c"), 0)

solo toma en cuenta que si el rango [en hoja datos] donde se busca el dato que pongas en 'A1' [en hoja visor]
ES 'efectivemente' en la columna 'C'... -> hay otras lineas del codigo propuesto que se deberan modificar<- :(

-> lo anterior [seguramente] es una 'apreciacion' diferente de parte mia :-( puesto que...
-> en tu mensaje anterior comentas que...
a) en la hoja Datos tienes los siguientes datos:
ID (Columna A1) Nombre (Columna B1) Edad (Columna C1)
b) en la hoja Visor... en la celda 'A1' pones ->el criterio<- de busqueda
c) la formula que empleas en las celdas, 'busca' la coincidencia en la columna 'C' de la hoja 'Datos'
=SI(A1<1,"",INDICE(datos!A1:C6,COINCIDIR(Hoja1!A1,datos!C1:C6,0),3))
-> [hasta donde puedo 'apreciar']... la columna 'C' en la hoja 'Datos' ES ->la edad<-
-> lo que no has comentado es si 'el criterio' que pones en la celda 'A1' de la hoja 'Visor'...
ES para buscar por edades -?-
ES para buscar por ID... o pudiera ser un criterio 'arbitrario' [ID/Nombre/Edad] -?-

[disculpa si entendi/asumi/imagine/... situaciones distintas a 'la realidad'] :))

si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida