Error en Macro de ocultar columnas

En mi hoja excel tengo unas macros grabadas de ocultar columnas y todo iba bien has que he añadido unas columnas en una tabla que tengo en esa hoja y ahora las columnas que se ocultan no corresponden a las indicadas en la macro.

He intentado quitar el formato de tabla y volver hacer la macro de ocultar y sigue haciendo lo mismo.

1 respuesta

Respuesta
1

Debieras subir una imagen con los encabezados de tu tabla. Y la macro que ya obtuviste con la grabadora. Aclara también cómo le indicas a la macro cuáles son las col a ocultar.

Con mucho gusto te ajustaré el código.

¡Gracias! 

te paso los pantallazos que me pides

Sub LiquiComercial()
'
' LiquiComercial Macro
'

'
Application.ScreenUpdating = False
Range("A:D,J:P").Select
Range("J1").Activate
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 17
Range("A:D,J:P,W:W,AB:AN,AP:AP").Select
Range("AP1").Activate
Selection.EntireColumn.Hidden = True
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 7
Range("F9").Select
End Sub

Primero te dejo el código pulido, ya que esto lo obtuviste con la grabadora y hay líneas innecesarias, como ser las que resultaron a medida que te movías por la hoja.

Sub LiquiComercial()
'
' LiquiComercial Macro
'
'
Application.ScreenUpdating = False
Range("A:D,J:P,W:W,AB:AN,AP:AP").Select
Range("AP1").Activate
Selection.EntireColumn.Hidden = True
Range("F9").Select
End Sub

Y todavía más simple, ya que no es necesario seleccionar el rango previamente en la escritura del código:

Sub LiquiComercial()
'
' LiquiComercial Macro
'
Application.ScreenUpdating = False
Range("A:D,J:P,W:W,AB:AN,AP:AP").EntireColumn.Hidden = True
Range("F9").Select
End Sub

Y así es cómo se ven, correctamente ocultas:

Pero, viendo tus imágenes, es posible que tengas rangos combinados (quizás para armar un cuadro). Y en ese caso, si alguna celda combinada pertenece al rango que necesitas ocultar, se ocultarán todas las col que entran en la combinación.

Observa el ejemplo de la imagen.

En el primer caso combiné las col D:I (en amarillo) pero como no entran en el rango de mi macro, se ocultan bien: A:C y J:N

En cambio, en el 2do caso, combiné las col C:H (en verde) y como le pido que se oculte el rango: A:C... cubre toda la combinación, o sea hasta H.

Espero haber aclarado tu duda, sino tendrás que enviarme el libro porque solo con imágenes no es posible detectar las anomalías de la hoja.

Sdos. Y si crees que la respuesta merece una votación mejor, agradeceré la modifiques.

Elsa

* En video 11 de mi canal encontrarás varios tips para convertir las macros de la grabadora en código más reducido y preciso.

¡Gracias! Muchas gracias.

Muchas gracias.

Eso  ya lo he probado pero cuando añado una columna a la tabla ya no funciona

La macro está más que probada y funciona agregando columnas... Comprenderás que sin ver cómo y dónde insertas la tuya no puedo precisar dónde está tu problema. Enviame tu hoja con esos objetos que se observan en la imagen. Borra los datos si te parece.

Mis correos aparecen en sitio que dejo al pie, aquí siempre me lo modifica el traductor pero intentá reemplazando los textos en mayúsculas por el caracter... y sin espacios ;)

Cibersoft PUNTO arg ARROBA gmail PUNTO com

Sdos,

http://aplicaexcel.com

Ya te devolví el libro.

En tu caso, para insertar (o quitar) col 'dentro' de la Tabla, no te sirven las instrucciones de la grabadora mencionando las letras, sino que tendrás que armar instrucciones de este tipo, indicando cada título. Entre 2 puntos las que son consecutivas o una por una.

Sub Macro2()
'x Elsamatilde
    Range("Tabla2[[CUPS]:[DNI/CIF]], Tabla2[[MAIL]], Tabla2[[Producto]]").EntireColumn.Hidden = True
End Sub

Te dejé una macro para volver a mostrar todas las col. Están todas en el Módulo 1.

Sdos y te espero en mi canal ;)

www.youtube.com/c/ElsaMatilde

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas