Para Hector Miguel- Buscar Datos

30/06/2005 - 13:57 por Luis E.Rodriguez | Informe spam
Hector:
Las formulas que me pasaste anduvieron barbaro. Me trae todos los datos que
necesito, pero tarda mucho en actualizar...;-((
Entrando mas en detalles te cuento que trabajo con un programa de
facturacion que no me lleva pagos.
Entonces en la hoja de Excel cree una macro que me copia el dbf donde el
programa de facturacion carga los clientes, y el dbf que carga los
recibos( pagos e impagos).
Con la formula que me pasaste podia llevar las cuentas corrientes desde el
excel. Pero son al dia de hoy 15.000 filas, por lo que al cambiar de cliente
( le puse un cuadro combinado que me busca todos los datos) tarda
muchisimo...
Se podra hacer de otra forma ???

Gracias de antemano
-> en la hoja 'deudas'...
1) pones las siguientes formulas [p.e.] [probablemente debas
sustituir 'mis' comas por punto y coma] -?-
[F1] =(a1&"\"&d1=resumen!$e$4&"\"&2)
[G1] =contar.si($f$1:f1,verdadero)
2) copias ambas celdas 'al resto' de las filas [ya sea 'por arrastre' o
como acostumbres]
-> en la hoja 'resumen'...
1) usa la siguiente formula [iniciando] en [B12]...
=si(filas(a$12:a12)>max(deudas!$g:$g),"",indice(deudas!b:b,coincidir(filas(a$12:a12),deudas!$g:$g,0)))
-> esta 'formulacion' deja en la columna B de la hoja 'resumen' cada
fila 'coincidente' de la columna B de la hoja 'deudas'
[asumiendo que] NO es 'necesario'... 'repetir' en cada fila el mismo
numero [codigo_cliente] que ya pusiste en 'E4' -??-

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
05/07/2005 - 05:46 | Informe spam
hola, Luis !

Las formulas... anduvieron... pero tarda mucho en actualizar...;-((
... cree una macro que me copia... los clientes, y... los recibos( pagos e impagos).
... son al dia de hoy 15.000 filas, por lo que al cambiar de cliente... tarda muchisimo...
Se podra hacer de otra forma ???



[creo que]... 'es tiempo'... de 'llegarle' a las macros :)) si comentas...
-> en que rango/s y hoja/s estan los datos que necesitas fifltrar/extraer/...
-> a que rango/s y hoja/s necesitas que sean 'filtrados/extraidos/...'

saludos,
hector.
Respuesta Responder a este mensaje
#2 Luis E.Rodriguez
05/07/2005 - 20:08 | Informe spam
Gracias Hector por responder...

[creo que]... 'es tiempo'... de 'llegarle' a las macros :)) si
comentas...
-> en que rango/s y hoja/s estan los datos que necesitas
fifltrar/extraer/...



Hoja "Deudas" Rango A2 : K15000 ( columna A Numero cliente, B tipo factura
(A, b o C) , C Numero de factura ,D y E no interesan , F fecha factura , G
no interesa, H importe, I, J no interesan , K estado ( 1 Paga 2 Impaga )


-> a que rango/s y hoja/s necesitas que sean 'filtrados/extraidos/...'



Hoja " Resumen" en F5 coloco el numero de cliente y los datos los preciso en
B14:E40 ( B tipo factura , C numero , D fecha , E importe )

Espero haberme explicado bien.


saludos,



Otros y gracias nuevamente

hector.


Luis

Respuesta Responder a este mensaje
#3 Héctor Miguel
06/07/2005 - 09:02 | Informe spam
hola, Luis !

Hoja "Deudas" Rango A2:K15000
... (columna A Numero cliente, B tipo factura (A, b o C), C Numero de factura, D y E no interesan
... F fecha factura, G no interesa, H importe, I, J no interesan, K estado (1 Paga 2 Impaga)
Hoja " Resumen" en F5 coloco el numero de cliente y los datos los preciso
... en B14:E40 (B tipo factura, C numero, D fecha, E importe)



te paso al final la forma mas 'barata' [o sencilla] que te pude conseguir, asi como los 'requerimientos' :)
-> y toma en consideracion que 'mi' separador de argumentos es la coma ',' NO punto y coma ';' <- :)
si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.
=1) en la hoja 'deudas' [estoy suponiendo que la fila 1 son los titulos o encabezados de las columnas]...
a) asigna un nombre al rango de la 'base de datos' [p.e. Datos] ->INCLUYENDO los titulos<-
b) [suponiendo que a partir de la columna 'L' ya no hay datos]...
-> deja libre la celda 'M1' [y solo por dejar un espacio libre]
-> pon la siguiente formula en 'M2'... =y(a2=resumen!f5,k2=2)
[por filtros avanzados -por codigo-, va a 'comparar' de cada fila si coincide con el cliente y el estado es 2 -impaga-]
2) en la hoja 'resumen' [suponiendo que los titulos 'a extraer' estan en el rango 'B13:E13']...
a) asigna un nombre a dichos titulos [p.e. salida]
b) ASEGURATE de que los textos COINCIDAN [exactamente] con sus titulos en la hoja 'deudas'
es decir... [resumen] B, C, D y E [13] deberan ser iguales a: [deudas] B, C, F y H [1]
c) copia las siguientes lineas...
en el modulo de codigo de la hoja 'resumen' ==Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$F$5" Then Exit Sub
Worksheets("deudas").Range("datos").AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Worksheets("deudas").Range("m1:m2"), _
CopyToRange:=Me.Range("salida")
Target.Select
End Sub
Respuesta Responder a este mensaje
#4 Luis E.Rodriguez
06/07/2005 - 15:06 | Informe spam
Perfecto Hector, sencillamente perfecto..

Gracias miles

Luis


"Héctor Miguel" escribió en el mensaje
news:ukT$
hola, Luis !

Hoja "Deudas" Rango A2:K15000
... (columna A Numero cliente, B tipo factura (A, b o C), C Numero de
factura, D y E no interesan
... F fecha factura, G no interesa, H importe, I, J no interesan, K
estado (1 Paga 2 Impaga)
Hoja " Resumen" en F5 coloco el numero de cliente y los datos los preciso
... en B14:E40 (B tipo factura, C numero, D fecha, E importe)



te paso al final la forma mas 'barata' [o sencilla] que te pude conseguir,
asi como los 'requerimientos' :)
-> y toma en consideracion que 'mi' separador de argumentos es la coma ','
NO punto y coma ';' <- :)
si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.
=> 1) en la hoja 'deudas' [estoy suponiendo que la fila 1 son los titulos o
encabezados de las columnas]...
a) asigna un nombre al rango de la 'base de datos' [p.e.
Datos] ->INCLUYENDO los titulos<-
b) [suponiendo que a partir de la columna 'L' ya no hay datos]...
-> deja libre la celda 'M1' [y solo por dejar un espacio libre]
-> pon la siguiente formula en 'M2'... =y(a2=resumen!f5,k2=2)
[por filtros avanzados -por codigo-, va a 'comparar' de cada fila
si coincide con el cliente y el estado es 2 -impaga-]
2) en la hoja 'resumen' [suponiendo que los titulos 'a extraer' estan en
el rango 'B13:E13']...
a) asigna un nombre a dichos titulos [p.e. salida]
b) ASEGURATE de que los textos COINCIDAN [exactamente] con sus titulos
en la hoja 'deudas'
es decir... [resumen] B, C, D y E [13] deberan ser iguales a:
[deudas] B, C, F y H [1]
c) copia las siguientes lineas...
en el modulo de codigo de la hoja 'resumen' ==> Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$F$5" Then Exit Sub
Worksheets("deudas").Range("datos").AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Worksheets("deudas").Range("m1:m2"), _
CopyToRange:=Me.Range("salida")
Target.Select
End Sub

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida