Buscar datos en otros libros

27/04/2006 - 12:54 por pacomar | Informe spam
Hola Grupo...

Estoy trabajando en una hoja donde se calculan gastos telefónicos. La
cuestión es que los datos de los consumos están repartidos en varios
libros con varias hojas en cada uno de ellos. El nombre de la hoja es
el mismo de la extensión telefónica y el nombre del libro (fichero
excel) es la fecha seguida de _x, siendo x un número que se incrementa
en una unidad.
La cuestión es: ¿cómo puedo acceder al rango de celdas (columna) de
cada una de las extensiones desde cada una de las celdas la hoja donde
se realizan los cálculos?

¿Sería posible que mientras no se pulsara un botón, supongo que con
una macro, no se actualizaran los datos?

Gracias de antemano.

Paco.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
28/04/2006 - 04:01 | Informe spam
hola, Paco !

... una hoja donde se calculan gastos... los datos... estan repartidos en varios libros con varias hojas
... El nombre de la hoja es el mismo de la extension telefonica
... el nombre del libro (fichero excel) es la fecha seguida de _x, siendo x un numero que se incrementa en una unidad.
... como puedo acceder al rango de celdas (columna) de cada una de las extensiones
... desde cada una de las celdas la hoja donde se realizan los calculos?
... que mientras no se pulsara un boton, supongo que con una macro, no se actualizaran los datos?



1) suponiendo que al existir una 'amplia gama de variantes' de que 'el dato' al que necesitas tener acceso pudiera estar...
-> en una 'cierta' hoja [u otra]... de algun 'cierto' libro [u otro]... [y todo esto]...
-> con [la posibilidad de] varios libros que tendrian [seguramente] varias hojas...

2) asumiendo que NO deseas 'tener abiertos' TODOS los -posibles- libros que pudieran verse 'involucrados'...

3) para estar 'en condiciones' de ofrecer alguna propuesta +/- 'aceptable' [en el menos tiempo posible]...
va a ser necesario que expongas algunos [quiza NO pocos] 'detalles' que -de momento- se quedaron 'en el tintero' :))
[p.e. si necesitas obtener un dato de una celda en especifico... hacer un buscarv... saber si existe o no 'el dato', etc.]

4) podrias hacer uso de 'ciertas' tecnicas que se utilizan para 'devolver' valores desde libros =>cerrados< [p.e. el metodo 'ExecuteExcel4Macro', usar ADO, DAO, etc. etc. etc.]

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 pacomar
28/04/2006 - 09:41 | Informe spam
Héctor Miguel ha escrito:

hola, Paco !

> ... una hoja donde se calculan gastos... los datos... estan repartidos en varios libros con varias hojas
> ... El nombre de la hoja es el mismo de la extension telefonica
> ... el nombre del libro (fichero excel) es la fecha seguida de _x, siendo x un numero que se incrementa en una unidad.
> ... como puedo acceder al rango de celdas (columna) de cada una de las extensiones
> ... desde cada una de las celdas la hoja donde se realizan los calculos?
> ... que mientras no se pulsara un boton, supongo que con una macro, no se actualizaran los datos?

1) suponiendo que al existir una 'amplia gama de variantes' de que 'el dato' al que necesitas tener acceso pudiera estar...
-> en una 'cierta' hoja [u otra]... de algun 'cierto' libro [u otro]... [y todo esto]...
-> con [la posibilidad de] varios libros que tendrian [seguramente] varias hojas...

2) asumiendo que NO deseas 'tener abiertos' TODOS los -posibles- libros que pudieran verse 'involucrados'...

3) para estar 'en condiciones' de ofrecer alguna propuesta +/- 'aceptable' [en el menos tiempo posible]...
va a ser necesario que expongas algunos [quiza NO pocos] 'detalles' que -de momento- se quedaron 'en el tintero' :))
[p.e. si necesitas obtener un dato de una celda en especifico... hacer un buscarv... saber si existe o no 'el dato', etc.]

4) podrias hacer uso de 'ciertas' tecnicas que se utilizan para 'devolver' valores desde libros =>cerrados<> [p.e. el metodo 'ExecuteExcel4Macro', usar ADO, DAO, etc. etc. etc.]

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



Hola Hector...

A ver si soy capaz de explicarme.

1.- Los datos salen de la centralita en una serie de libros que
dependiendo de la cantidad de llamadas, contienen más o menos hojas.
Se trata de no sobrepasar cierto tamaño de fichero. Como decía antes,
el nombre del libro lo se compone así: fecha_1.xls, fecha_2.xls,
fecha_3.xls, etc. y las hojas de los libros se llaman como la
extensión telefónica, por ejemplo: 27000, 27001, 27002, etc. No se
repite un nombre de hoja en ningún libro.

2.- Efectivamente, se trata de no tener abiertos los libros.

3.- Los datos a extraer de cada libro y hoja correspondiente ( nº
extensión, columna C y consumo, columna I), siempre están en las
mismas columnas, que evidentemente se llaman igual en cada hoja. Lo que
varía es la longitud de la colunma dependiendo de la cantidad de
llamadas.
La idea es coger los datos que haya en la columna consumo que se
correspondan con la extensión deseada e independientemente de que sea
más larga o más corta, sumarlos y colocar ese resultado en una celda
de otra hoja que está en otro libro.

4.- Lo de las técnicas a utilizar, pues depende de lo que veais
vosotros que sois los expertos. Me imagino que como casi siempre se
podrá hacer de varias formas, pero seguramente una de ellas será la
más adecuada.

Saludos y gracias.
Respuesta Responder a este mensaje
#3 Héctor Miguel
28/04/2006 - 19:10 | Informe spam
hola, Paco !

1.- ... datos... en una serie de libros que dependiendo de la cantidad de llamadas, contienen mas o menos hojas.
... el nombre del libro lo se compone así: fecha_1.xls, fecha_2.xls, _3.xls, etc.
... las hojas... se llaman como la extension telefonica...: 27000, 27001, 27002, etc. No se repite... en ningun libro.
2.- Efectivamente, se trata de no tener abiertos los libros.
3.- ... datos a extraer de cada libro y hoja correspondiente (...extension, columna C y consumo, columna I)
... Lo que varia es la longitud de la colunma dependiendo de la cantidad de llamadas.
... coger los datos... en la columna consumo... sumarlos y colocar ese resultado en una celda de otra hoja... en otro libro.
4.- ... de las tecnicas a utilizar... Me imagino que como casi siempre se podra hacer de varias formas
... seguramente una de ellas sera la mas adecuada...



sigue siendo necesario que 'aclares' algunos detalles [como p.e.]
1) 'de donde' se puede obtener 'el nombre' del libro que debera permanecer 'cerrado' ?
-> la ruta completa [y opcionalmente tambien la extension por si no fuera *.xls] :)
2) 'de donde' se puede obtener el nombre -> de la hoja en ese libro cerrado [la extesion telefonica] ?
3) 'cual es'... ESA '... una celda de otra hoja... en otro libro..' donde se debe devolver 'el resultado' ?
4) 'donde estan' las celdas que contienen 'datos a buscar' [en la misma hoja donde se requiere el resultado ?] ?
5) 'cuantas' son las celdas que van a 'causar' busquedas en libros cerrados ?

me imagino que todo lo anterior esta relacionado a ['ciertos' ?] celdas/rangos en alguna hoja ;)
y en funcion del numero de celdas con dato_a_buscar -> y al numero [posible] de libros involucrados...
pudiera resultar mas 'apropiada' una tecnica u otra... pero... 'saber' cual ???
[probablemente] va a depender de las respuestas a las preguntas anteriores ;)

saludos,
hector.

__ mensajes anteriores __
> ... una hoja donde se calculan gastos... los datos... estan repartidos en varios libros con varias hojas
> ... El nombre de la hoja es el mismo de la extension telefonica
> ... el nombre del libro (fichero excel) es la fecha seguida de _x, siendo x un numero que se incrementa en una unidad.
> ... como puedo acceder al rango de celdas (columna) de cada una de las extensiones
> ... desde cada una de las celdas la hoja donde se realizan los calculos?
> ... que mientras no se pulsara un boton, supongo que con una macro, no se actualizaran los datos?

1) suponiendo que al existir una 'amplia gama de variantes' de que 'el dato' al que necesitas tener acceso pudiera estar...
-> en una 'cierta' hoja [u otra]... de algun 'cierto' libro [u otro]... [y todo esto]...
-> con [la posibilidad de] varios libros que tendrian [seguramente] varias hojas...

2) asumiendo que NO deseas 'tener abiertos' TODOS los -posibles- libros que pudieran verse 'involucrados'...

3) para estar 'en condiciones' de ofrecer alguna propuesta +/- 'aceptable' [en el menos tiempo posible]...
va a ser necesario que expongas algunos [quiza NO pocos] 'detalles' que -de momento- se quedaron 'en el tintero' :))
[p.e. si necesitas obtener un dato de una celda en especifico... hacer un buscarv... saber si existe o no 'el dato', etc.]

4) podrias hacer uso de 'ciertas' tecnicas que se utilizan para 'devolver' valores desde libros =>cerrados<> [p.e. el metodo 'ExecuteExcel4Macro', usar ADO, DAO, etc. etc. etc.]

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#4 pacomar
29/04/2006 - 10:20 | Informe spam
Hola de nuevo...

Tengo un libro llamado "facturación telf" con dos hojas. En una de
ellas, "administrador" se utilizan 5 columnas: A: Id (número), B: Nº
Extensión (número), C: Nombre (=BUSCARV(B4;List;2;FALSO) donde "List"
es un nombre:='Usuarios Telefonía'!$B$3:$E$163, D: Importe - aquí es
donde necesito la fórmula para que busque los importes que entrega la
centralita -.
La segunda hoja del libro "Usuarios Telefonía" es donde se da de alta
a los mismos y de donde se saca el valor de C al poner el nº de
extensión en B.

Los libros que están cerrados pueden estar en el mismo directorio que
"facturación telf.", por ejemplo: C:/Centralita/ 31_04_06_1.xls

Los datos a buscar en los libros cerrados, por ejemplo en
"31_04_06_1.xls", hoja "205" están siempre en las mismas columnas: C:
extension y I: importe. El rango de celdas depende de las llamadas
realizadas.

Ahora mismo hay 210 usuarios de teléfono.

Saludos...

Paco.
Respuesta Responder a este mensaje
#5 Héctor Miguel
29/04/2006 - 23:21 | Informe spam
hola, Paco !

disculpame si te llegara a parecer 'impertinente' [o demasiado pregunton] :)) pero...
[me parece que] siguen algunos datos... [semi]'ocultos' en los detalles que has estado aportando :-( sin embargo...
[si no me equivoco]... los siguientes serian [lo que se dice]: 'puntos clave' para lograr lo que se pretende -?-

1) tienes un libro ("facturacion telef") con dos hojas:
a) "administrador" tiene 5 columnas: [A]: ID_#, [B]: Extension_#; [C]: Nombre_<formula>; [D]: Importe_?: [E]: quien sabe :D
b) "usuarios telefonia" es un listado de usuarios de donde se obtiene 'el nombre' en la formula de la columna [C] de "administrador"

2) estoy suponiendo que 'el dato' que se devuelve en dicha columna [C], es 'el nombre' del libro [fecha con formato: dd_mm_aa_N.xls]
[seria bueno si 'confirmas' esta y las siguientes 'suposiciones', sobre todo, si la EXTension '.XLS' SI forma parte de la cadena 'devuelta'] ;)

3) estoy asumiendo que 'dicho' libro contiene una hoja cuyo nombre ES el #_Extension que esta en la columna [B] de la hoja "administrador"
[por lo tanto]... en la hoja "administrador" necesitas en la columna [D] la suma de importes de la hoja_extension que esta en el libro 'fecha_N'

4) si 'la hoja' en su nombre lleva ya la extension correspondiente, se puede 'omitir' que la columna [C] vaya el numero de extension -?-
-> esto, segun tu primer mensaje: '... El nombre de la hoja es el mismo de la extension telefonica ...'
y segun el segundo: '... las hojas de los libros se llaman como la extension telefonica... No se repite un nombre de hoja en ningun libro ...'
-> NO 'concuerda' con los comentarios de tu segundo mensaje... cuando dices...
'... La idea es coger los datos que haya en la columna consumo que se correspondan con la extension deseada ...'

5) [en sintesis]... el nombre de cada hoja ES una correspondencia con algun numero [unico] de extension ???
o en cada hoja [sin importar 'el nombre']... existen varias extensiones_# que resulte necesario 'hacer un filtrado' de los importes ???

comentas 'por donde' empezamos a buscar alguna solucion [y el uso de la 'tecnica' mas 'apropiada' segun 'la realidad'] ?

saludos,
hector.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida