Como Ajustar automaticamente as Colunas em um SubForm

Como Ajustar automaticamente as Colunas em um SubForm

Prezado leitor!

Neste artigo sobre Access VBA você vai aprender um procedimento bem simples para que a largura das colunas do seu sub formulário sejam ajustados automaticamente quando você carregar o seu formulário.

Esta funcionalidade pode ser muito útil dependendo do seu projeto.

Para exemplificar a nossa solução vou tomar como base o “case” que divulgamos no vídeo Como Ajustar automaticamente as Colunas em um SubForm

Primeiramente vamos apresentar o nosso subformulário que representa as Ordens de Compra dos fornecedores que estão no formulário principal. Á medida que navegamos pelos fornecedores, as ordens de compra associada a eles são exibidas no subformulário.

accessfacil.com

Agora, como podemos abrir este formulário e que estas colunas não estejam comprimidas?

Repare que as colunas do subform estão todas comprimidas propositalmente. Para resolver isso vamos incluir o seguinte procedimento no evento “Ao Abrir” do formulário

Private Sub Form_Open(Cancel As Integer)

    Dim ctrl As Control
    
    For Each ctrl In Forms![frmFornecedores]!sfrmOC.Controls
    
        If TypeOf ctrl Is TextBox Or TypeOf ctrl Is ComboBox Then
        
            'Define a largura da coluna como Automática
            ctrl.ColumnWidth = -2
            
        End If
        
    Next
    
End Sub

Gostaria de destacar 3 pontos importantes que se apresentam neste procedimento:

  1. A forma de se referenciar a um Subform, dentro do form atual (Forms![frmFornecedores]!sfrmOC.Controls);
  2. A Função TypeOf, utilizada dentro da Condicional para associar a um objeto;
  3. A Propriedade ColumnWidth = -2, que define como automática a largura de uma coluna.

Ao exibir o formulário, certamente o resultado será neste formato, conforme abaixo:

accessfacil.com

Um forte abraço!

Aldir Oliveira

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *