Upload
internet
View
112
Download
2
Embed Size (px)
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 1
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 1
Função IsDate
• A função IsDate recebe uma variável ou expressão como argumento e determina se a variável ou expressão é uma data válida ou pode ser convertida para uma data válida;
• Caso o argumento seja uma data válida, a função retorna Verdadeiro. Caso contrário, retorna Falso;
• É utilizada para verificar se o usuário digitou uma data válida em um campo de um formulário;
3
Apostila Pág. 61
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 2
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 2
Exemplo da Função IsDate• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoIsDate e clique em OK;
• Digite o código conforme mostra a Figura e execute-o.
Apostila Pág. 61
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 3
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 3
Exemplo da Função IsDate
• Teste seu procedimento;
• Troque a data para “31/2/2007” e verifique a mensagem
Apostila Pág. 61
Dim xx = "19/9/2007"If IsDate(x) Then MsgBox "Você digitou uma data válida!"Else MsgBox "Data inválida! Digite novamente!"End If
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 4
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 4
Função IsEmpty
• A função IsEmpty recebe uma variável ou expressão como argumento e determina se em algum momento foi atribuído algum valor para a variável ou expressão;
• Caso tenha sido atribuído algum valor, a função retorna Verdadeiro. Caso contrário, retorna Falso;
• É utilizada para verificar se um campo de digitação obrigatória não foi deixado em branco;
Apostila Pág. 61
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 5
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 5
Exemplo da Função IsEmpty• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoIsEmpty e clique em OK;
• Digite o código conforme mostra a Figura e execute-o.
Apostila Pág. 61
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 6
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 6Apostila Pág. 62
Exemplo da Função IsDate
'Vamos declarar uma variável x que'nunca será utilizada em nosso procedimentoDim a, b, cDim xa = 10b = 23c = a + bIf IsEmpty(x) Then MsgBox "A variável x não foi utilizada!"End If
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 7
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 7
Função IsNumeric• A função IsNumeric recebe uma variável ou expressão
como argumento e determina se o valor atribuído à variável ou expressão é numérico ou pode ser convertido para numérico;
• Caso o valor seja numérico, ou possa ser convertido, a função retorna Verdadeiro. Caso contrário, retorna Falso.
Apostila Pág. 63
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 8
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 8
Exemplo da Função IsNumeric• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida a Sub FunçãoIsNumeric execute-a.
Funções
Apostila Pág. 63
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 9
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 9Apostila Pág. 63
Exemplo da Função IsNumericDim x, y, zx = 123'Atribuo um valor que não pode ser convertido'para numéricoy = "Riachuelo - 80"z = Datemensagem = "Valor de x: " & x & " É numérico ? " mensagem = mensagem & IsNumeric(x) & Chr(13)mensagem = mensagem & "Valor de y: " & y & " É numérico ? " mensagem = mensagem & IsNumeric(y) & Chr(13)mensagem = mensagem & "Valor de z: " & zmensagem = mensagem & " É numérico ? " & IsNumeric(z)MsgBox mensagem
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 10
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 10
Função CBool• A função CBool converte uma variável ou resultado de
uma expressão para o subtipo Boolean (Verdadeiro ou Falso);
• Qualquer número com exceção do zero é automaticamente convertido para Verdadeiro;
• O valor zero é sempre convertido para Falso
• O argumento desta função não pode ser Texto, pois será gerado um erro em tempo de execução;
Apostila Pág. 64
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 11
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 11
Exemplo da Função CBool• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize a FunçãoCBool execute-a.
Funções
Apostila Pág. 64
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 12
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 12
Exemplo da Função Cbool
Apostila Pág. 64
MsgBox CBool(10 > 25) & Chr(13) & CBool(3)
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 13
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 13
Função CByte• A função CByte converte uma variável ou resultado de
uma expressão para o subtipo Byte. O valor convertido deve estar na faixa aceitável para o tipo byte que vai de 0 a 255;
• Caso o número esteja fora da faixa aceitável, será gerada uma mensagem de erro em tempo de execução;
• O argumento desta função não pode ser Texto, pois será gerado um erro em tempo de execução;
Apostila Pág. 64
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 14
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 14
Exemplo da Função CByte• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Localize a Sub FunçãoCByte e execute-a.
Funções
Apostila Pág. 64
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 15
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 15
Exemplo da Função CByte
Apostila Pág. 65
MsgBox CByte(10 + 34) & Chr(13) & CByte(35)
MsgBox CByte(100 + 200)
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 16
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 16
Função CCur
• A função CCur converte uma variável ou resultado de uma expressão para o subtipo Currency (semelhante ao formato Moeda, porém sem o símbolo do real: R$);
• O argumento desta função não pode ser Texto, pois será gerado um erro em tempo de execução;
Apostila Pág. 65
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 17
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 17
Exemplo da Função CCur• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize a Sub FunçãoCCur e execute-a.
Funções
Apostila Pág. 65
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 18
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 18
Exemplo da Função CCur
Apostila Pág. 66
MsgBox CCur(250.335677 + 324.3333) & Chr(13) & CCur(1250.326582)
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 19
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 19
Função CDate
• A função CDate converte uma variável ou resultado de uma expressão para o subtipo Date;
• O argumento desta função deve estar em um formato que seja aceitável para datas, senão será gerada uma mensagem de erro em tempo de execução;
Apostila Pág. 66
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 20
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 20
Exemplo da Função CDate• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize Sub FunçãoCDate e execute-a.
Funções
Apostila Pág. 66
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 21
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 21
Exemplo da Função CDate
Apostila Pág. 66
MsgBox CDate("31/10/1980") & Chr(13) & CDate("23-01-2007")
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 22
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 22
Exemplo da Função CDate
Apostila Pág. 67
MsgBox CDate("31/02/1980")
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 23
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 23
Função CDbl
• A função CDbl converte uma variável ou resultado de uma expressão para o subtipo Double;
Função CInt
• A função CInt converte uma variável ou resultado de uma expressão para o subtipo Integer;
Apostila Pág. 67
Funções
Funções
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 24
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 24
Função CLng
• A função CLng converte uma variável ou resultado de uma expressão para o subtipo Long;
Função CSng
• A função CSng converte uma variável ou resultado de uma expressão para o subtipo Single;
Apostila Pág. 68
Funções
Funções
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 25
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 25
Função CStr
• A função CStr converte uma variável ou resultado de uma expressão para o subtipo String;
Apostila Pág. 69
Funções
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 26
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 26
Função Int
• A função Int retorna somente a parte inteira de um determinado número;
Apostila Pág. 69
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 27
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 27
Exemplo da Função Int• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoInt e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 69
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 28
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 28
Exemplo da Função Int
Apostila Pág. 69
MsgBox Int(-7.35) & Chr(13) & Int(10.35)
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 29
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 29
Função Asc
• A função Asc retorna o valor numérico do código ASCII, para a primeira letra de uma String;
Apostila Pág. 70
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 30
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 30
Exemplo da Função Asc• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoAsc e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 70
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 31
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 31
Exemplo da Função Asc
• O valor 65 indica que o número relativo ao código ASCII para a letra A.
Apostila Pág. 70
mensagem = Asc("Ainda chovia!")MsgBox mensagem
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 32
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 32
Função Chr
• A função Chr(número) recebe um número como parâmetro e retorna o caracter ASCII associado ao número fornecido como parâmetro;
Apostila Pág. 70
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 33
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 33
Exemplo da Função Chr• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoChr e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 70
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 34
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 34
Exemplo da Função Chr
• Vale lembrar que já utilizamos Chr(13) nas nossas caixas de mensagem para simular um Enter.
Apostila Pág. 70
mensagem = Chr(65)MsgBox mensagem
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 35
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 35
Função Len
• Esta função determina o tamanho da String que foi passada como parâmetro para a função;
Apostila Pág. 70
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 36
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 36
Exemplo da Função Len• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoLen e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 70
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 37
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 37
Exemplo da Função Len
• Vale lembrar que os espaços em branco também são contados.
Apostila Pág. 70
MsgBox Len("Este é um exemplo de uso da função Len!!")
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 38
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 38
Função LCase
• Esta função converte para minúsculas as letras da String que foi passada como parâmetro para a função;
Apostila Pág. 71
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 39
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 39
Exemplo da Função LCase• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize a Sub FunçãoLCase e execute-a.
Funções
Apostila Pág. 71
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 40
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 40
Exemplo da Função LCase
Apostila Pág. 71
MsgBox LCase("ESTE É UM EXEMPLO DE USO DA FUNÇÃO LCASE!!")
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 41
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 41
Função UCase
• Esta função converte para maiúsculas a letras da String que foi passada como parâmetro para a função;
Apostila Pág. 71
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 42
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 42
Exemplo da Função UCase• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoUCase e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 71
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 43
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 43
Exemplo da Função UCase
Apostila Pág. 71
MsgBox LCase("este é um exemplo de uso da função UCase!!")
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 44
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 44
Função Left
• Esta função retorna um número especificado de caracteres, a partir do início (Left – Esquerda) de uma String;
• Os espaços em branco também são considerados.
• O formato geral é mostrado na Figura.
Apostila Pág. 71
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 45
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 45
Exemplo da Função Left• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoLeft e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 71
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 46
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 46
Exemplo da Função Left
Apostila Pág. 71
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 47
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 47
Função Right
• Esta função retorna um número especificado de caracteres, a partir do Final (Right - Direita) de uma String;
• Os espaços em branco também são considerados;
• O formato geral é mostrado na Figura
Apostila Pág. 72
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 48
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 48
Exemplo da Função Right• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize a Sub FunçãoRight e execute-a.
Funções
Apostila Pág. 72
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 49
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 49
Exemplo da Função Right
Apostila Pág. 72
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 50
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 50
Função Mid
• Esta função retorna um número especificado de caracteres, a partir de uma posição especificada dentro da String;
• Os espaços em branco também são considerados;
• O formato geral é mostrado na Figura.
Apostila Pág. 72
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 51
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 51
Exemplo da Função Mid• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoMid e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 72
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 52
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 52
Exemplo da Função Mid
Apostila Pág. 73
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 53
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 53
Exemplo da Função Mid
Apostila Pág. 73
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 54
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 54
Função InStr
• Retorna uma Variant (Long) que especifica a posição da primeira ocorrência de uma seqüência de caracteres dentro de outra.
Apostila Pág. 72
Sintaxe:
InStr([start, ]string1, string2[, compare])
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 55
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 55
Função InStr
• Retorna uma Variant (Long) que especifica a posição da primeira ocorrência de uma seqüência de caracteres dentro de outra.
Apostila Pág. 72
Sintaxe
InStr([start, ]string1, string2[, compare])
Parte Descrição
startExpressão numérica que define a posição inicial de cada pesquisa. Se omitido, a pesquisa iniciará na posição do primeiro caractere.
string1Obrigatória. Expressão de seqüência sendo pesquisada.
string2Obrigatória. Expressão de seqüência de caracteres procurada.
compare
Opcional. Especifica o tipo de comparação de seqüência de caracteres. Se compare for omitido, a configuração Option Compare determinará o tipo de comparação.
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 56
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 56
Exemplo da Função InStr
• No Editor do VBA, no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoInStr e clique em OK;
• Digite a linha de código a seguir.
Apostila Pág. 72
Dim posição As Longposição = InStr("Paralelepípedo", "lele")MsgBox posição
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 57
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 57
Função String
• Esta função retorna um determinado caractere, um número especificado de vezes;
• O formato geral é mostrado na Figura.
Apostila Pág. 73
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 58
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 58
Exemplo da Função String• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoString e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Funções
Apostila Pág. 73
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 59
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 59
Exemplo da Função String
Apostila Pág. 73
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 60
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 60
Função Date• Esta função retorna a data corrente do sistema;
• Não são necessários parâmetros para este função
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 61
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 61
Exemplo da Função Date• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoDate e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 62
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 62
Exemplo da Função Date
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 63
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 63
Função Time
• Esta função retorna a hora corrente do sistema;
• Não são necessários parâmetros para este função
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 64
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 64
Exemplo da Função Time• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoTime e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 65
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 65
Exemplo da Função Time
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 66
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 66
Função Day
• Recebe como parâmetro uma data e retorna um número entre 1 e 31, indicando o dia do mês;
• O formato desta função é mostrado na Figura.
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 67
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 67
Exemplo da Função Day• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoDay e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 74
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 68
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 68
Exemplo da Função Day
Apostila Pág. 75
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 69
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 69
Função Month
• Recebe como parâmetro uma data e retorna um número entre 1 e 12, indicando o mês do ano;
• O formato desta função é mostrado na Figura.
Apostila Pág. 75
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 70
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 70
Exemplo da Função Month• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize a Sub FunçãoMonth e execute-a.
Funções
Apostila Pág. 75
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 71
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 71
Exemplo da Função Month
Apostila Pág. 75
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 72
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 72
Função Now
• Retorna a hora e a data corrente do sistema;
• Não precisamos passar parâmetros para esta função.
Apostila Pág. 75
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 73
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 73
Exemplo da Função Now• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoNow e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 75
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 74
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 74
Exemplo da Função Now
Apostila Pág. 75
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 75
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 75
Função Hour
• Recebe como parâmetro uma hora e retorna um número entre 0 e 23, indicando a hora do dia;
• O formato desta função é mostrado na Figura.
Apostila Pág. 76
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 76
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 76
Exemplo da Função Hour• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize a Sub FunçãoHour e execute-a.
Funções
Apostila Pág. 76
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 77
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 77
Exemplo da Função Hour
Apostila Pág. 76
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 78
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 78Apostila Pág. 77
Função DateDiff• Esta função pode ser utilizada para determinar o
número de intervalos (em dias, trimestres, semestre, anos, etc.) entre duas datas.
• O formato desta função é mostrado na Figura.
• O parâmetro intervalo é uma String que diz que tipo de intervalo vamos calcular.
• A tabela a seguir detalha os valores possíveis para o parâmetro intervalo.
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 79
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 79Apostila Pág. 77
Função DateDiff
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 80
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 80
Exemplo da Função DateDiff• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida no menu Inserir, escolha Procedimento.
• Digite para nome FunçãoDateDiff e clique em OK;
• Digite a linha de código conforme mostra a Figura e execute-o.
Apostila Pág. 77
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 81
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 81
Exemplo da Função DateDiff• Vamos calcular o número de meses, desde o
descobrimento do Brasil até 30 de setembro de 2007.
Apostila Pág. 77
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 82
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 82
Exemplo da Função DateDiff• Vamos modificar o exemplo e calcular o número de
horas, desde o descobrimento do Brasil até a data de hoje.
Apostila Pág. 78
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 83
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 83
Função Year
• Recebe como parâmetro uma data e retorna um número indicativo do ano;
• O formato desta função é mostrado na Figura.
Apostila Pág. 79
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 84
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 84
Exemplo da Função Year• Abra o editor do VBA usando o menu
Ferramentas Macro Editor do Visual Basic ou pressione as teclas Alt + F11;
• Dê um duplo clique sobre o Módulo que foi inserido para as funções e em seguida clique com o mouse sobre a janela onde são digitados os códigos;
• Em seguida localize a Sub FunçãoYear e execute-a.
Funções
Apostila Pág. 79
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 85
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 85
Exemplo da Função Year
Apostila Pág. 79
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 86
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 86
Funções para Cálculos Matemáticos
• Abs(n) retorna o valor absoluto (sem sinal) do número n;
• Atn(n) retorna o valor do arco cuja tangente é o número n;
Apostila Pág. 81
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 87
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 87
Funções para Cálculos Matemáticos
• Cos(n) retorna o cosseno do número n. O número n deve ser fornecido em radianos;
• Exp(n) retorna o número e (número de Euler: e = 2,7183) elevado ao número n;
Apostila Pág. 81
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 88
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 88
Funções para Cálculos Matemáticos
• Log(n) retorna o logaritmo natural do número n;
• Rnd(n) retorna um número aleatório entre 0 e 1;
Apostila Pág. 81
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 89
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 89
Funções para Cálculos Matemáticos
• Sng(n) retorna -1 se o número n é negativo e retorna 1 se o número n é positivo;
• Sin(n) retorna o seno do número n. O número n deve ser fornecido em radianos;
Apostila Pág. 81
UTFPR – Damat
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 90
Excel – Macros e Programação em VBA
13 de setembro de 2007 Pág. 90
Funções para Cálculos Matemáticos
• Sqr(n) retorna a raiz quadrada do número n;
• Tan(n) retorna a tangente do número n. O número n deve ser fornecido em radianos;
Apostila Pág. 81