Notifications
Clear all

Ajustar largura de uma coluna

9 Posts
4 Usuários
0 Reactions
2,582 Visualizações
(@charlie-81)
Posts: 290
Reputable Member
Topic starter
 

Olá a todos,

Boa tarde!

Preciso saber se existe uma forma de ajustar "automaticamente" a largura de uma coluna de acordo com o tamanho do texto digitado. Quando digo ajustar automaticamente, digo ajustar sem ter que ir em formatar e ajustar largura da coluna

 
Postado : 19/06/2012 2:56 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 
Private Sub Worksheet_Change(ByVal Target As Range)
Call Ajustar
End Sub

Sub Ajustar()
Range("A:A,B:B,C:C,D:D,E:E,J:J").EntireColumn.AutoFit
End Sub
 
Postado : 19/06/2012 4:06 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Automatico seria por VBA.

Esse código deve posto dentro da Plan1 ou 2 ou 3, embaixo de EstaPasta_de_Trabalho

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    Application.ScreenUpdating = False
    For Each Sh In ActiveWorkbook.Worksheets
        On Error Resume Next
        Sh.Activate
        Cells.EntireColumn.Autofit
    Next Sh
    Application.ScreenUpdating = True
End Sub
 
Postado : 19/06/2012 4:18 pm
(@robert)
Posts: 561
Honorable Member
 

Charlie,
Boa noite!

Além das boas dicas dos nossos mestres aquí do fórum, aproveito para informa-lo que poderá explorar a utilização de gravação de MACROS que é essencial nessa questão.

 
Postado : 19/06/2012 5:30 pm
(@reinaldos)
Posts: 32
Eminent Member
 

Copiei o código do alexandrevba, mas ele faz com que não seja possível usar o comando Desfazer após cada digitação. Tem como resolver isso mantendo o ajuste automático de largura?

 
Postado : 05/12/2013 10:33 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Os recursos de VBA não fazem parte do excel, então quando é feito uma ação por VBA, é o mesmo que não ter feito nada no excel, por isso o desfazer (Ctrl + Z), não funciona!!

Att

 
Postado : 06/12/2013 7:18 am
(@reinaldos)
Posts: 32
Eminent Member
 

Entendo. Mas o problema não é nem que não dê pra desfazer o ajuste de largura. É que, se eu faço uma digitação que vá ativar o ajuste automático de largura, o código simplesmente apaga a opção de Desfazer. Então sou obrigado a manter quaisquer erros que tenha feito, ou não salvar e perder todas alterações.

 
Postado : 06/12/2013 8:11 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Então mude o gatilho (forma de dispara a macro), coloque em um botão ou de outra forma que não seja Private Sub Workbook_SheetChange(

Att

 
Postado : 06/12/2013 8:13 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Caso seja necessário reabrir o tópico, o autor poderá enviar uma MP para um dos moderadores solicitando o desbloqueio.

 
Postado : 15/12/2013 3:06 pm