Formulário modo folha de dados "zebrado" e campos totais

Já demonstrei em outra dica, como "zebrar" um formulário no modo continuo.   Agora é a vez do modo folha de dados.   Por padrão, ele já se apresenta "zebrado", com faixas branca e cinza bem suave.  Esta configuração pode ser modificada; veja como:

Carregue o formulário, a seguir clique no botão Alternar cor do fundo, conforme figura abaixo e escolha a cor ao seu gosto.

Usando Access

Observe neste exemplo como ficou o formulário após a troca de cor:

Usando Access

Veja também a nova aparência do fundo , toda gradeada, assemelhando-se à planilha do Excel.  Particularmente gostei muito deste designer, mas se você quiser alterá-lo, basta clicar no botão Linhas de grade (1) e escolher uma das opções.  Pode ainda trocar a cor do fundo através do botão Cor do fundo (2).

Usando Access

 

Observe como ficou o formulário após sua alteração:

Usando Access

Outra novidade, e muito bem-vinda, é que agora podemos inserir, direto na folha de dados, campos Totais, sem programação.  

Carregue o formulário e clique no botão Totais (1).   Abra a Caixa de listagem (2), correspondente a coluna que você deseja totalizar e selecione a opção desejada, conforme você está vendo na figura abaixo.

Usando Access


 

Como resultado, temos:

Usando Access

Aproveitando o exemplo, será demonstrado como inserir a Formatação Condicional.   Abra o formulário no modo estrutura e selecione o campo (1) a ser inserido a formatação.  Clique no botão Condicional(2) da faixa.  Será aberto o formulário da formatação (3).   Veja que no formulário da formatação foi configurado para que a fonte fique em vermelho, quando o valor do campo for superior a Um mil Reais.

Usando Access

Como resultado temos:

Usando Access

Agora vou demonstrar uma maneira de como você pode mudar, em tempo de execução, não só o "zebrado", mas também a fonte e o tamanho da fonte.

Este exemplo foi projetado para a alteração ocorrer quando for pressionada a combinação de teclas CRTL + y.   

Para isso usei no evento "Ao apertar tecla" , das propriedades do formulário, o seguinte código:

Option Compare Database
Dim posição As Byte
_______________________________________________________________________
 
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If Shift = 2 Then '2 se você pressionou a tecla CTRL
  If KeyCode = 89 Then '89 se pressionou a tecla y minúsculo
    Select Case Nz(posi?o)
      Case 0
        Me.DatasheetAlternateBackColor = RGB(244, 244, 244)
        Me.DatasheetFontHeight = 8
        Me.DatasheetFontName = "verdana"
        posição = 1
      Case 1
        Me.DatasheetAlternateBackColor = RGB(204, 255, 204)
        Me.DatasheetFontHeight = 10
        Me.DatasheetFontName = "Arial"
        posição = 2
      Case 2
        Me.DatasheetAlternateBackColor = RGB(204, 236, 255)
        Me.DatasheetFontHeight = 9
        Me.DatasheetFontName = "Tahoma"
        posição = 0
    End Select
  End If
End If
End Sub

Passe a propriedade Visualizar teclas do formulário para SIM

A figura abaixo mostra um teste com o  CRTL + y , para você visualizar as modificações feitas em tempo de execução.  Observe a troca de cor, do nome da fonte e do tamanho da fonte.

Usando Access

Observe na figura acima,  na  faixa azul, do preço em vermelho, uma sobreposição do fundo branco do controle.   É que na formatação condicional não tem a opção de fundo transparente.  O padrão é branco.

Baixe o arquivo exemplo para você estudar e testar o efeito do código apresentando, utilizando a combinação CRTL + y

 


4 comentário(s)

Alexandre Costa   18/11/2009 08:48:27

Muito bom as suas dicas, me quebrou um galho, no meu trabalho. Valeu!!!!

Avelino Sampaio   30/11/2009 17:57:52

Fico feliz em poder ajudar

Sucesso

Elaine Alcantara   4/12/2009 13:24:50

Olá,
tenho uma dúvida com relação a expressões. Tem alguma maneira de mostrar uma letra (A,B ou C) dependendo do total de pontos de um questionario::
Me ajude por favor, estou quebrando a cabeça...

Obrigada,
Elaine
eralcantara@gmail.com

Geraldo Marques   7/6/2010 17:02:07

Caríssimo,

ótimos exemplos.

Pergunta: É possível programar uma Key (exemplo: F8) para adicionar um novo registro ?

Geraldo. (24-33446176)


Envie seu comentário: