Macro con autofit

12/02/2006 - 17:20 por RAUL | Informe spam
Hola gente.
Tengo una macro sencilla que me permite ocultar desde la celda activa en una
fila cualquiera ciertas columnas y darles a otras un ancho determinado.
Es esta:
Columns("D:W").EntireColumn.Hidden = True
Columns("W:AI").EntireColumn.Resize.Columns.ColumnWidth = 1

Mi problema es redactar otra instrucción para que en vez de dar ancho =1 sea
autofit para esas columnas(" W:AI") en la fila de la celda activa.
Muchas gracias.

Preguntas similare

Leer las respuestas

#6 RAUL
13/02/2006 - 00:36 | Informe spam
Gracias KL, me haces reír!!, no, no eres tu, es mi explicación.
A ver si logro aclarar: Quiero dar autofit a las celdas de ciertas columnas
(fijas y determinadas) en la fila de la celda activa (variable, cualquier
fila).
Esta macro funciona:
Sub VERINSUMOS()

ActiveCell.Offset(, 22).Resize(, 30).Columns.AutoFit

End Sub

Tiene la desventaja de que al utilar offset está hecha para ejecutarse desde
las celdas de una columna determinada.
La macro de PEPE que permitiría ejecutarse desde cualquier celda de la fila
de la celda activa y en cuestión:

Sub VERINSUMOS()

Columns("W:AD").EntireColumn.AutoFit

End Sub

Por algúnmotivo no logra el autofit.
Saludos.

"KL" escribió:

Mostrar la cita
#7 KL
13/02/2006 - 00:48 | Informe spam
Hola Raul,

Mostrar la cita
Pues eso si que es muy raro porque a mi me funciona. ?Seguro que las columnas [W:AD] tienen valores (no estan vacias)? Otra cosa (no
creo que esto pueda incidir en el funcionamiento del codigo, pero...) en la instruccion de PEPE sobra la propiedad EntireColumn, asi
que el codigo podria ser el siguiente:

Columns("W:AD").AutoFit

Saludos,
KL
#8 RAUL
13/02/2006 - 01:07 | Informe spam
Creo que donde no nos entendemos es que el autofit deseo que lo haga en las
columnas mencionadas pero para las celdas de la fila activa, es un
"autoajustar a la la selección".
Disculpa otra vez.
Gracias


"KL" escribió:

Mostrar la cita
#9 KL
13/02/2006 - 01:20 | Informe spam
Hola Raul,

Mostrar la cita
Bingo! Como te he dicho estoy un poco espeso hoy :-).

A ver esto:

Sub test()
Intersect([W:AD], ActiveCell.EntireRow).Columns.AutoFit
End Sub

Saludos,
KL
#10 KL
13/02/2006 - 01:33 | Informe spam
Hola de nuevo,

Mas opciones:

Sub test()
Range("W:AD").Rows(ActiveCell.Row).Columns.AutoFit
End Sub

y si solo hay una columna:

Sub test()
Range("W:W").(ActiveCell.Row).Columns.AutoFit
End Sub

Saludos,
KL

"KL" wrote in message news:
Mostrar la cita
Ads by Google
Search Busqueda sugerida