Macro para hacer más ancha una columna al posicionarse en ella

Lo que busco es que al seleccionar cualquier celda de la columna C a la columna E, dicha columna de la celda seleccionada se haga más ancha.

Ancho de columnas:

C = 80 px 

D = 80 px

E = 80 px

Ahora selecciono la celda D5 y cambia el ancho de la columna "D" a 240 px, y así sucesivamente, tomando en cuenta que al seleccionar cualquier celda de cualquier otra columna fuera de este rango de C, DE, E, los anchos de las columnas deben regresar a su estado normal 80 px.

Sin más por el momento.

Respuesta
1

H o l a:

Pon la siguiente macro en los eventos de tu hoja

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Range("C:E")) Is Nothing Then
        Columns(Target.Column).ColumnWidth = 33.57
    Else
        Range("C:E").ColumnWidth = 10.71
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

H o l a:

Tal vez sea por el navegador, intenta con google chrome.

Pon la siguiente macro en los eventos de tu hoja

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Range("C:E")) Is Nothing Then
        Columns(Target.Column).ColumnWidth = 33.57
    Else
        Range("C:E").ColumnWidth = 10.71
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

Gracias Dante, ya he podido recibir tu respuesta y me gustaría aplicar una modificación a tu macro, ahora lo que busco es que cuando yo selecciono una celda dentro de Range("C:E") dicha columna se ensancha a 240 px, mientras que las demás permanecen dentro de ese rango permanecen a 80px, es decir solo se ensancha la columna ACTIVA del Range("C:E"), y las demás permanecen o regresan a su estado normal de 80 px.

Gracias

No entendí.

Podrías explicarlo con ejemplos, es decir, seleccionas la columna B o cualquiera diferente a C, D, F, y qué quieres que pase.

Seleccionas la columna C y qué quieres que pase con las otras columnas, qué quieres que pase con la columna C y qué quieres que pase con las columnas D y E

¿Seleccionas la columna D y qué quieres que pase?

Prueba así:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    Range("C:D").ColumnWidth = 10.71
    If Not Intersect(Target, Range("C:E")) Is Nothing Then
        Columns(Target.Column).ColumnWidth = 33.57
    End If
End Sub

' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

¡Gracias!  Excelente, la ultima respuesta es la adecuada, te lo agradezco nuevamente dante, que tengas un buen día.

Saludos

1 respuesta más de otro experto

Respuesta
1

He recibido una notificación de que me has respondido la pregunta pero el sitio no me la muestra, podrías publicarla nuevamente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas