Filtrar base de Datos

24/08/2004 - 22:52 por Victor Manuel | Informe spam
Hector:

Te agradezco la respuesta, pero eso ya lo se manejar, lo
que yo deseo es lo siguiente:

mi facturacion detallada es asi (como ejemplo)

en las columnas las tengo asi: Factura, codigo, nombre,
importe, fecha.

y en las filas los datos de cada una, como podras darte
cuenta, puedo tener en la fila 1 al cliente "X" en la fila
2 al cliente "Y" y en la fila 3 al cliente "X".

lo que deseo es que en una nueva hoja tener unicamente los
registros del cliente X, una forma es poner condicionantes
en la nueva hoja, pero me quedan lineas en blanco cuando
no coincide el codigo del cliente, entonces tengo
que "ocultar" las filas vacias, para que, al momento de
imprimir no salgan las filas vacias, mi pregunta es ¿como
puedo ocultar las filas de manera automatica?.

Preguntas similare

Leer las respuestas

#6 Victor Manuel
07/09/2004 - 18:32 | Informe spam
-> estoy suponiendo que tienes...
- una hoja llamada 'Resumen'
- [en ella] un rango 'de extraccion'


llamado 'Datos.Cliente' de X_filas × Y_columnas
-> este seria el rango 'preparado' [incluidos


los 'vacios'] para volcar los datos 'encontrados' del
cliente_X <-
- [opcionalmente] una celda [llamada 'Registros']


para 'contar' el numero de 'datos encontrados' del
cliente_X
p.e. usando una formula 'del tipo' de =contar.si


(NombresClientesBD,ClienteSolicitado)
-> estoy usando las 'formas largas' de hacer referencia




a
hojas/rangos[nombres]/filas/etc.
[para que puedas ejecutar las macros 'desde


cualquier' hoja y 'analizar'
diferentes 'comportamientos'] ;)
-> podrias usar las macros en eventos [para automatizar


las tareas]
[por lo pronto... estoy ejemplificando la forma en


que NO hay celdas vacias 'intermedias'] :-)

si cualquier duda o requieres ayuda [o tienes


informacion] adicional... ¿comentas?
saludos,
hector.
en un modulo de codigo 'normal' ==>>Sub MostrarTodo() ' para mostrar las filas que 'estaban'


ocultas
Worksheets("Resumen").Range


("Datos.Cliente").EntireRow.Hidden = False
End Sub
Sub Barrer_Ocultar() ' en caso de que el rango 'de


extraccion' tenga 'vacios intermedios'
Dim Fila As Integer
Application.ScreenUpdating = False
With Worksheets("Resumen").Range("Datos.Cliente")
For Fila = 1 To .Rows.Count
.Range("a" & Fila).EntireRow.Hidden = (.Range("a"




&
Fila) = "")
Next
End With
End Sub
Sub MostrarSoloLlenas() ' en caso de que quieras usar


el 'conteo' de datos 'encontrados'
Dim Registros As Integer
MostrarTodo
With Worksheets("Resumen")
Registros = .Range("Registros")
With .Range("Datos.Cliente")
Range(.Range("a" & Registros + 1), .Range("a"


& .Rows.Count)) _
.EntireRow.Hidden = True
End With
End With
End Sub
en el modulo de codigo de 'la hoja' ==>>Private Sub Worksheet_Calculate() ' por si quieres


mantener visibles solo los datos 'encontrados'
MostrarSoloLlenas
End Sub

.





Hector:

Gracias por tu respuesta, todavia tengo dudas

en un modulo de codigo 'normal' < donde


inserto
esto
en el modulo de codigo de 'la hoja' < donde


inserto esto

al ejecutar la macro NO HACE LO QUE NECESITO
al parecer trabaja pero no oculta las filas

creo que te ayudaria lo siguiente

la hoja la nombre "Cuentas por Cobrar"
el rango lo nombre como "datos.cliente" <- lo tome de tu
macro

el rango es de a10 hasta i400

el dato que uso como base para ocultar la fila es el
contenido en la columna A, esto es: si el contenido de la
celda A10 es igual a 0 entonces oculta la fila sino


revisa
siguiente fila. < y revisa la celda a11 despues la a12
hasta que termine el rango, posiblemente tenga que
modificar el rango de a10..i400 a a10..a400 para que sea
ese el rango donde buscar.
.




Hector:

lo de contar el registro me parece de mas, (no le
encuentro la utilidad por el momento),
el rango modificado correcto es a10..a400 y lo
llamaria "datos.cliente"

espero te sea de utilidad estos comentarios, te lo
agradezco de antemano.
Respuesta Responder a este mensaje
#7 Victor Manuel
08/09/2004 - 18:02 | Informe spam

-> estoy suponiendo que tienes...
- una hoja llamada 'Resumen'
- [en ella] un rango 'de extraccion'


llamado 'Datos.Cliente' de X_filas × Y_columnas
-> este seria el rango 'preparado' [incluidos


los 'vacios'] para volcar los datos 'encontrados' del
cliente_X <-
- [opcionalmente] una celda [llamada 'Registros']


para 'contar' el numero de 'datos encontrados' del
cliente_X
p.e. usando una formula 'del tipo' de =contar.si


(NombresClientesBD,ClienteSolicitado)
-> estoy usando las 'formas largas' de hacer referencia




a
hojas/rangos[nombres]/filas/etc.
[para que puedas ejecutar las macros 'desde


cualquier' hoja y 'analizar'
diferentes 'comportamientos'] ;)
-> podrias usar las macros en eventos [para automatizar


las tareas]
[por lo pronto... estoy ejemplificando la forma en


que NO hay celdas vacias 'intermedias'] :-)

si cualquier duda o requieres ayuda [o tienes


informacion] adicional... ¿comentas?
saludos,
hector.
en un modulo de codigo 'normal' ==>>>Sub MostrarTodo() ' para mostrar las filas






que 'estaban'
ocultas
Worksheets("Resumen").Range


("Datos.Cliente").EntireRow.Hidden = False
End Sub
Sub Barrer_Ocultar() ' en caso de que el rango 'de


extraccion' tenga 'vacios intermedios'
Dim Fila As Integer
Application.ScreenUpdating = False
With Worksheets("Resumen").Range("Datos.Cliente")
For Fila = 1 To .Rows.Count
.Range("a" & Fila).EntireRow.Hidden = (.Range("a"




&
Fila) = "")
Next
End With
End Sub
Sub MostrarSoloLlenas() ' en caso de que quieras usar


el 'conteo' de datos 'encontrados'
Dim Registros As Integer
MostrarTodo
With Worksheets("Resumen")
Registros = .Range("Registros")
With .Range("Datos.Cliente")
Range(.Range("a" & Registros + 1), .Range("a"


& .Rows.Count)) _
.EntireRow.Hidden = True
End With
End With
End Sub
en el modulo de codigo de 'la hoja' ==>>>Private Sub Worksheet_Calculate() ' por si quieres


mantener visibles solo los datos 'encontrados'
MostrarSoloLlenas
End Sub

.





Hector:

Gracias por tu respuesta, todavia tengo dudas

en un modulo de codigo 'normal' < donde


inserto
esto
en el modulo de codigo de 'la hoja' < donde


inserto esto

al ejecutar la macro NO HACE LO QUE NECESITO
al parecer trabaja pero no oculta las filas

creo que te ayudaria lo siguiente

la hoja la nombre "Cuentas por Cobrar"
el rango lo nombre como "datos.cliente" <- lo tome de tu
macro

el rango es de a10 hasta i400

el dato que uso como base para ocultar la fila es el
contenido en la columna A, esto es: si el contenido de




la
celda A10 es igual a 0 entonces oculta la fila sino


revisa
siguiente fila. < y revisa la celda a11 despues la




a12
hasta que termine el rango, posiblemente tenga que
modificar el rango de a10..i400 a a10..a400 para que sea
ese el rango donde buscar.
.




Hector:

lo de contar el registro me parece de mas, (no le
encuentro la utilidad por el momento),
el rango modificado correcto es a10..a400 y lo
llamaria "datos.cliente"

espero te sea de utilidad estos comentarios, te lo
agradezco de antemano.

.




HECTOR:

YA FUNCIONA, SOLAMENTE NECESITO QUE ME EXPLIQUES PARA QUE
ME SERVIRIA EL CONTADOR DE REGISTROS ENCONTRADOS Y COMO LO
UTILIZO, PORQUE AL MOMENTO DE HABILITARLO ME DICE QUE
EXISTE UN ERROR Y HAY QUE DEPURAR.

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