Retroceder   Foros del Web > Temas generales de computación > Ofimática

Respuesta
 
Herramientas Desplegado
Antiguo 26-sep-2008, 04:58   #1 (permalink)
polig ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Problemas con celdas vacias

Hola tod@s!

Tengo una Macro que a partir de una hoja de calculo base, con miles de datos, me filtra de acuerdo a ciertos parametros y me copia en otra hoja como valores las celdas resultantes. Esto es, que de un archivo inicial de alrededor 11,000 filas, genero uno nuevo, con la info relevante para cada caso, con unas 200 filas (El nro de filas resultantes nunca es fijo...). El problema es que esta nueva hoja de 200 filas queda pesando 28,0 MB!!!! 10 veces mas que el archivo original. Lo que procedo a hacer es borrar las filas en blanco manualmente, es decir, selecciono desde la fila 201 hasta el final y suprimo..Listo!! el archivo pesa ahora 300KB.
Realmente no entiendo cual es la informacion que el archivo me copia en las celdas en blanco.. y no he logrado encontrar alguna manera de incluir en la macro una operacion que me seleccione estas filas despues de la ultima con valores y me las suprima.
Alguien de uds tiene casos similares o sugerencias?? Les agradeceria...

Saludos
polig está desconectado   Responder Citando
Antiguo 26-sep-2008, 09:06   #2 (permalink)
Colaborador
David el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy pronto
 
Avatar de David el Grande
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 7.177
Pregunta Respuesta: Problemas con celdas vacias

¿Podríamos ver la función que hace el paso entre las dos hojas?. Así será más fácil ayudarte.
__________________
"En la vida muchas veces tenemos que ser aprendices, y muchas veces maestros"
P.S.: Pregunta siempre en el foro correcto.
David el Grande está desconectado   Responder Citando
Antiguo 29-sep-2008, 04:08   #3 (permalink)
polig ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Respuesta: Problemas con celdas vacias

Hola,
Mi macro esta escrita de la siguiente manera:
Como puedes ver es simplemente copiar datos y pegarlos en una nueva hoja, para darles un formato especial.
Espero puedan ayudarme, gracias!!

Cells.Select
Selection.Copy
Workbooks.Add
Range("A1").Select
ActiveSheet.Paste
Range("A7").Select
Range("J1:J4").Select
Selection.ClearComments
Columns("O:O").EntireColumn.AutoFit
ActiveWindow.SmallScroll Down:=189
Rows("700:700").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Delete Shift:=xlUp
Range("A8").Select
Range("A8:M8").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$O8=""kritisch"""
Selection.FormatConditions(1).Interior.ColorIndex = 44
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$O8=""verschoben"""
Selection.FormatConditions(2).Interior.ColorIndex = 37
Selection.Copy
Range("A9:M9").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("A8").Select
polig está desconectado   Responder Citando
Antiguo 29-sep-2008, 15:09   #4 (permalink)
mrocf tiene algunos puntos positivos de karma
 
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 347
Enviar un mensaje por Yahoo  a mrocf
De acuerdo Respuesta: Problemas con celdas vacias

Hola! polig.
Veo un par de contrasentidos que -quizás- expliquen tus problemas:

Por un lado dices que tras el filtrado copias "como valores" las celdas resultantes...
Sin embargo, las siguientes líneas:

Cells.Select
Selection.Copy
Workbooks.Add
ActiveSheet.Paste


no están "pegando valores" sino todo el contenido completo de las celdas en cuestión, incluyendo las fórmulas que contengan.

Luego, surgen dos comentarios iniciales:

a) ¿Por qué Cells.Copy (o sea: toda la hoja completa) y no sólo el rango producto del filtrado?
b) ¿Por qué ActiveSheet.Paste y no Selection.PasteSpecial Paste:=xlPasteValues?

Comienza por ver esas cuestiones y luego nos cuentas.
Saludos, Cacho.
mrocf está desconectado   Responder Citando
Antiguo 01-oct-2008, 01:56   #5 (permalink)
polig ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Respuesta: Problemas con celdas vacias

Hola Cacho! Muchas gracia spor tu sugerencia.
Estuve revisando nuevamente el proceso, pero no logro que la macro me copie unicamente las celdas con datos. En la macro inicial copio toda la hoja parapegarla tal cual; asi aseguro que todos los datos, independientemente del numero de filas, queden copiados. Ahora intente con la siguiente macro:

Range("A1:V1").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Workbooks.Add
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("A5").Select
End Sub

Cuando lo hago manualmente, la doble Selection.End down copia exactamente lo que necesito, pero al ejecutar esa marcro solo logro copiar los encabezados; las celdas filtradas no quedan! Por esta razon fue que decidi escribir la macro con copiar toda la hoja, con el problema resultante del tamanno del archivo.
Como hacer entonces para que una marcro me copie solo las celdas que tienen datos sin tener que copiar toda la hoja? El numero de filas con datos es siempre diferente... lo unico constante son los encabezados, que van de la fila 1 a la 7.
polig está desconectado   Responder Citando
Antiguo 01-oct-2008, 03:28   #6 (permalink)
mrocf tiene algunos puntos positivos de karma
 
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 347
Enviar un mensaje por Yahoo  a mrocf
De acuerdo Respuesta: Problemas con celdas vacias

Evalúa lo siguiente:

En toda base de datos hay campos (columnas del Excel) que pueden tener información o estar en blanco.
Pero hay columnas que -sin ningún lugar a dudas- SIEMPRE tienen información. Entonces: ¿Cuál de tus columnas SIEMPRE tiene información?

Supongamos que tal columna es la "B".

Lo que debes hacer es -antes del proceso de filtrado- localizar tu última fila con datos del siguiente modo:

UltimaFila = [B65536].End(xlUp).Row


Y luego del proceso de filtrado, en lugar de:
Cells.Select
Selection.Copy


puedes incorporar:
Range("A1", "V" & UltimaFila).Copy

siguiendo con:
Workbooks.Add
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("A5").Select
End Sub



Prueba con eso y luego nos cuentas.

Saludos, Cacho.
mrocf está desconectado   Responder Citando
Antiguo 07-oct-2008, 09:00   #7 (permalink)
polig ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Respuesta: Problemas con celdas vacias

Super! no me sabia la de encontrar la ultima fila... esa fue la que me arreglo el problema.
Gracias!
polig está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 11:41.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96