Universidade do Access - Curso Completo - Do Básico Até a Criação de Sistemas Profissionais Completos - Passo a Passo
FORMAÇÃO ONLINE COM CERTIFICADO - 13 CURSOS - 574 VÍDEO-AULAS - 63:32 HORAS - CLIQUE AQUI
Você está em: PrincipalArtigosOffice : Vba_access_p15
Quer receber novidades e e-books gratuitos?

Tutorial de Programação VBA – Access – Parte 15 - Criando e utilizando Funções Personalizadas

Objetivos:

Esta é a Parte 15 do Tutorial de Programação VBA no Access. Neste parte do tutorial falarei sobre a criação de funções personalizadas no Access, usando a programação VBA. O objetivo desta série de tutoriais é mostrar como utilizar a programação VBA para solucionar problemas complexos no Access, problemas que muitas vezes não tem como ser resolvidos sem o uso de programação.

Pré-requisitos: Para acompanhar esta lição você deve dominar os conceitos apresentados no seguintes treinamento: "Curso Básico de Access" e no tutorial "Consultas Avançadas no Microsoft Access".

Nota: Este tutorial foi retirado da apostila da Semana 2, do Curso de Access Avançado e VBA. Você pode adquirir os três arquivos, com todo o conteúdo deste curso, em um total de 550 páginas de conteúdo, com exemplos detalhados, passo-a-passo, por apenas R$ 20,00 para envio através de Download. Para saber como adquirir este curso,

acesse o endereço a seguir:

Criando e utilizando Funções Personalizadas:

Uma Função é um grupo de comandos que podem ser executados, simplesmente através da chamada do nome da Função. Podemos passar um ou mais argumentos para uma Função. Quando uma Função é chamada, a execução desloca-se para dentro da Função. Depois de executados todos os comandos dentro da Função, a execução do código continua, com o comando seguinte ao que chamou a Função. A diferença da Função para a Sub-rotina, é que a Função sempre retorna um ou mais valores para o comando que a chamou. É obrigatório que a função retorne um valor.

A sintaxe para declaração de uma Função é a seguinte:

Function Nome_da_Função(argumento1, argumento2, ..., argumenton)

Comando1

Comando2

...

Comandon

End Function

Uma Função pode, ou não, conter argumentos. Caso sejam necessários argumentos, estes serão passados quando a Função for chamada, e devem ser passados, na mesma ordem em que foram definidos.

DICA: Quando você criar Função, procure utilizar nomes que descrevam os objetivos da Função. Com isso você torna o entendimento do código mais fácil para quem for utilizá-lo.

Considere o seguinte exemplo de declaração de uma Função:

Função Converte_para_dolar(valor_em_real, cotacao_dolar)

Comando1

Comando2

...

Comandon

End Function

Neste caso, declaramos uma Função chamada Converte_para_dolar, a qual espera receber 2 parâmetros: um valor em real e a cotação do dólar.

Uma vez criada a Função, devemos chamá-la, em um comando de atribuição, isto é, o valor retornado pela função, deve ser atribuído a uma variável ou exibido através de um comando como MsgBox. No exemplo abaixo, estamos atribuindo o valor de retorno da função, à variável valor_dolar.

valor_dolar = Converte_para_dolar (1500,1.81)

Também poderíamos exibir o valor retornado pela função, utilizando o comando MsgBox, conforme indicado a seguir:

MsgBox “Valor em dólar: “ & Converte_para_dolar (1500,1.81)

Observe que os parâmetros são passados dentro dos parênteses, e na mesma ordem definida quando da criação da função.

Também poderíamos declarar uma Função, sem parâmetros. Neste caso posso simplesmente não utilizar os parênteses após o nome da Função, ou utilizar um par de parênteses, sem nada dentro, conforme indicado abaixo:

Function Nome_da_Função

Comando1

Comando2

...

Comandon

End Function

ou

Function Nome_da_Função( )

Comando1

Comando2

...

Comandon

End Function

Por exemplo, vamos criar uma função que converte um valor de um ângulo de Graus para Radianos. Depois utilizaremos a função dentro de um laço For...Next, para exibir o valor em radianos, para os ângulos de 0 à 20 graus.

No exemplo a seguir temos o código onde foi criada a função CRad, que converte um valor em graus para radianos. Depois utilizamos um laço for para exibir, através de uma Caixa de mensagem os valores em radianos, para os ângulos de 0 à 20 graus.

'Criação da função CRad.

Function CRad(valor_graus)

CRad = (valor_graus*3.14)/180

End Function

'Agora utilizamos a função dentro do laço For/Next.

For i=0 to 20

mensagem = mensagem & "Angulo: " & i & "Valor em Radianos: "

mensagem = mensagem & FormatNumber(CRad(i),5)& Chr(13)

Next

MsgBox mensagem

Observe que dentro da função, atribuímos a variável CRad um determinado valor. É isso que caracteriza uma função. Dentro do código da função, devemos atribuir a uma variável que tenha o mesmo nome da função, um determinado valor. Este valor é que será o valor de retorno da função.

Cabe salientar o uso da função FormatNumber, dentro do laço For. A função FormatNumber é utilizada para formatar a maneira como um número é exibido. Neste caso, utilizamos a função FormatNumber, para limitar o número de casas decimais, a 5 casas depois da vírgula.

Em cada "passada" do laço For...Next, chamamos a função CRad(i), para fazer a conversão de Graus para radianos. O Valor retornado pela função CRad, é passado para a função FormatNumber, para ser formatado com apenas 5 casas decimais.

Funções que serão utilizadas em vários Formulários/Relatórios, devem ser criadas em um Módulo de Código. Depois é só chamar a função onde esta for necessária.

Exercício : Crie uma função chamada ValorImpostoPF. Esta função deve receber os seguintes parâmetros:

  • Total de rendimentos - TotRed
  • Total de deduções - TotDed
  • Imposto retido na fonte - ImpRet

Com base na tabela oficial do IR, disponível em www.receita.fazenda.gov.br, a função calcula o imposto devido e informa se existe imposto a restituir ou a pagar e qual o respectivo valor. Criar um formulário chamado CalcIRPF, no qual temos três campos, um para cada parâmetro da função. O usuário preenche os valores deste campo e clica em um botão Calcular. O evento Ao clicar chama a função ValorImpostoPF e exibe o resultado dos cálculos.

Conclusão:

Neste parte do tutorial mostrei como criar funções personalizadas no Access, usando programação VBA. O objetivo desta série de tutoriais é mostrar como utilizar a programação VBA para solucionar problemas complexos no Access, problemas que muitas vezes não tem como ser resolvidos sem o uso de programação.

Nota: Este tutorial foi retirado da apostila da Semana 2, do Curso de Excel Avançado e VBA. Você pode adquirir os três arquivos, com todo o conteúdo deste curso, em um total de 550 páginas de conteúdo, com exemplos detalhados, passo-a-passo, por apenas R$ 20,00 para envio através de Download. Para saber como adquirir este curso, acesse o endereço a seguir:


você conhece a universidade do access?

Universidade do Access - Curso Completo de Access
com tudo para você dominar o Access - do Básico ao
Avançado - até a Criação de Sistemas Profissionais
Completos - Passo a Passo - Tela a Tela

Capa da Universidade do Access

Aplica-se ao Access 2019, 2016, 2013 e 2010!

13 Cursos - 574 Vídeo-Aulas - 63:32 horas

Para todos os detalhes, acesse:

https://juliobattisti.com.br/universidade-do-access.asp


Outras partes do Tutorial
Parte 1 - Programação com o Microsoft Access - Por que utilizar?
Parte 2 - Aprendendo VBA
Parte 3 - O Ambiente de Programação
Parte 4 - Anatomia dos Módulos do VBA
Parte 5 - Tipos de dados - Declaração e “tipo” de variável
Parte 6 - Fazendo cálculos e comparações com o VBA – Uso de Operadores
Parte 7 - O Escopo das variáveis, no VBA
Parte 8 - Estruturas para controle de fluxo em VBA
Parte 9 - Estruturas de repetição
Parte 10 - Funções, procedimentos e eventos com VBA
Parte 11 - Funções para conversão de tipos
Parte 12 - Funções para tratamento de String
Parte 13 - Funções para tratamento de Data e Hora
Parte 14 - Criando suas próprias funções e procedimentos
Parte 15 - Criando e utilizando Funções Personalizadas
Quer receber novidades e e-books gratuitos?

 
 

Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

Todos os direitos reservados, Júlio Battisti 2001-2025 ®

LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO

DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI