Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouMaria Fernanda Faria Fontes Alterado mais de 8 anos atrás
1
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Apresentação criada por Fernando de Carvalho Navarro Fernando.c.navarro@gmail.com ' Por Carlos Eduardo Guimarães ' carloseduardo.excel@gmail.com Function CreateFileList(FileFilter As String, _ IncludeSubFolder As Boolean) As Variant ' returns the full filename for files matching ' the filter criteria in the current folder Dim FileList() As String, FileCount As Long CreateFileList = "" Erase FileList If FileFilter = "" Then FileFilter = "*.*" ' all files With Application.FileSearch.NewSearch.LookIn = CurDir.Filename = FileFilter.SearchSubFolders = IncludeSubFolder.FileType = msoFileTypeAllFiles If.Execute(SortBy:=msoSortByFileName, _ SortOrder:=msoSortOrderAscending) = 0 Then Exit Function Redim FileList(.FoundFiles.Count) For FileCount = 1 To.FoundFiles.Count FileList(FileCount) =.FoundFiles(FileCount) Next FileCount.FileType = msoFileTypeExcelWorkbooks ' reset filetypes End With CreateFileList = FileList Erase FileList End Function Sub TestCreateFileList() Dim FileNamesList As Variant, i As Integer 'ChDir "C:\My Documents" ' activate the desired startfolder for the filesearch FileNamesList = CreateFileList("*.*", False) ' performs the filesearch, includes any subfolders ' present the result Range("A:A").ClearContents For i = 1 To UBound(FileNamesList) Cells(i + 1, 1).Formula = FileNamesList(i) Next i End SubDezembro/2013 Excel 2007 VBA 6.3 Excel 2010 VBA 7.0 Excel 2013 VBA 7.1
2
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Operadores e Variáveis Operadores Unidades Variáveis Constantes Expressões 2
3
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Operadores Aritméticos e de Texto Soma: + Subtração: - Multiplicação: * Divisão: / Quociente (divisão inteira): \ Resto: Mod Exponenciação: ^ Concatenação de Texto: & 3
4
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Operadores de Comparação Expressões sempre retornam True (Verdadeiro) ou False (Falso) Operadores de comparação: = (igual) > (maior que) < (menor que) >= (maior ou igual a) <= (menos ou igual a) <> (diferente de) Is (Usado para comparar duas variáveis de referência a objeto) Like (Usado para comparar duas sequências de caracteres) Exemplos de expressões: A > 0 Salário_Bruto >= 3500 Status <> "Reprovado" 4
5
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Operadores Lógicos Expressões sempre retornam True (Verdadeiro) ou False (Falso) Operadores Lógicos: Not (Não): Executa uma negação lógica de uma expressão; And (E): Executa uma conjunção lógica em duas expressões; Or (Ou): Executa uma disjunção lógica em duas expressões; Xor (Ou exclusivo): Executa uma exclusão lógica em duas expressões. 5
6
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Tabela da Verdade Expressão 1OperadorExpressão 2Resultado TrueAndTrue AndFalse AndTrueFalse AndFalse TrueOrTrue OrFalseTrue FalseOrTrue FalseOrFalse TrueXorTrueFalse TrueXorFalseTrue FalseXorTrue FalseXorFalse —NotTrueFalse —NotFalseTrue 6 True se todas forem True True se ao menos uma for True True se apenas uma for True
7
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Exemplos de Expressões Lógicas Definições iniciais: A = 10, B = 20, C = 0 Exemplos: Not A > 0 A > 0 And B > 0 A = 0 Or B > 0 Or C = 0 A > 10 And B = 0 Or C = 0 A > 10 And (B = 0 Or C = 0) A > 0 Xor B = 0 A > 0 Xor B > 0 7 False True False True False
8
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Tipos de Dados Números inteiros: 100 -5 0 1200 Números decimais fracionários: Notação americana (ponto decimal), sem separador de milhar 12.25 0.12345 -45.2.15 -.125 1925.653 Texto: "Aprovado" "SP" "Produto 1" "Av. das Árvores nº 1000, cj. 92" Data e Hora: Delimitador # (muitas operações aceitam aspas duplas) #25/12/2012# #14:21:46# #17/feb/2014# #06/05/2013# #sep-7-2008 14:25:37# 8
9
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Tipos de Dados – Números Inteiros Byte (1 byte) Valores: 0 a 255 Integer (2 bytes) Valores: -32.768 a 32.767 Long (4 bytes) Valores: -2.147.483.648 a 2.147.483.647 LongLong (8 bytes, válido para plataformas de 64 bits) Valores: -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 9
10
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Tipos de Dados – Números Decimais Single (4 bytes) Valores negativos: –3,402823 × 10 38 a –1,401298 × 10 –45 Valores positivos: 1,401298 × 10 –45 a 3,402823 × 10 38 Double (8 bytes) Valores negativos: –1,79769313486231 × 10 308 a –4,94065645841247 × 10 –324 Valores positivos: 4,94065645841247 × 10 –324 a 1,79769313486232 × 10 308 Currency (8 bytes) Valores: –922.337.203.685.477,5808 a 922.337.203.685.477,5807 Decimal (14 bytes) Valores inteiros: ±79.228.162.514.264.337.593.543.950.335 Valores decimais: ±7,9228162514264337593543950335 com 28 casas decimais à direita Menor nº diferente de zero: ±0,0000000000000000000000000001 10
11
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Tipos de Dados – Outros Tipos Boolean (2 bytes) Valores: TRUE ou FALSE Date (8 bytes) Valores: de 1 de janeiro de 100 a 31 de dezembro de 9999 String (10 bytes + comprimento variável da sequência) Valores: de 0 a aproximadamente 2 bilhões de caracteres String (comprimento fixo da sequência) Valores: de 1 a aproximadamente 65.400 caracteres Object (4 bytes) Valores: qualquer referência a um objeto Variant (16 bytes para números) Valores: qualquer valor numérico até o intervalo de um Double Variant (22 bytes + comprimento da sequência de caracteres) Valores: O mesmo intervalo de String de comprimento variável 11
12
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Variáveis São lugares da memória do computador onde são armazenados dados enquanto o programa está rodando e podem ter seu valor alterado. Regras de nomeação: Letras, números e alguns caracteres de pontuação, porém o primeiro caractere deve ser uma letra. Comprimento máximo de 255 caracteres. Não é permitido: espaço, ponto, vírgula, #, $, %, &,, =, ou !. É permitido o uso de letras acentuadas. Não são permitidos nomes que coincidam com palavras reservadas pelo VBA: End, Loop, Sub, Range, Sheet, Row, Selection, etc. O VBA não faz distinção entre letras maiúsculas e minúsculas. Portanto, os nomes Taxa, taxa ou TAXA referem-se à mesma variável. 12
13
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Variáveis Atribuição de valor: Variável = valor Exemplos: SalárioBruto = 10000 Descontos = 1350.25 SalárioLíquido = SalárioBruto – Descontos Nome = "Fulano de Tal" DataValidade = #20/jul/2013# Variáveis contadoras (incremento fixo): i = i + 1 Linha = Linha + 2 Variáveis acumuladoras (incremento variável): Soma = Soma + ValorAtual 13
14
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Declaração Explícita de Variáveis Instruções: Dim, Static, Private, Public Sintaxe: Dim variável As Tipo Exemplos: Dim Ano As Integer Dim i As Byte, j As Integer Dim População As Long Dim Taxa As Single, VendaLíq As Currency Dim x As Integer, y As Long, z As Double Dim Nome As String, Endereço As String Dim Código_Cliente As Integer, Estado As String*2, _ Cidade As String, Data_Admissão As Date Dim Entrega_Urgente As Boolean Dim Entrada 14
15
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Escopo das Variáveis Módulo 1 Sub Proc1() Dim a, b, c... a = b + c... End Sub Sub Proc1() Dim a, b, c... a = b + c... End Sub Sub Proc2() Static x, y, z... x = 10 y = 20 z = y - x End Sub Sub Proc2() Static x, y, z... x = 10 y = 20 z = y - x End Sub Procedimento (Macro) Módulo 2 Dim i, j, k Private d1, d2, d3 Dim i, j, k Private d1, d2, d3 Sub Proc3() Dim a, b, c... a = 100 i = 1... End Sub Sub Proc3() Dim a, b, c... a = 100 i = 1... End Sub Sub Proc4() Static x, y, z... x = 0 j = i + d1 v1 = x + j... End Sub Sub Proc4() Static x, y, z... x = 0 j = i + d1 v1 = x + j... End Sub Privativo (Módulo) Módulo 3 Public v1, v2, v3 Sub Proc5() Dim a, b, c... a = b + c v2 = v1 + 1... End Sub Sub Proc5() Dim a, b, c... a = b + c v2 = v1 + 1... End Sub Sub Proc6() Static x, y, z... x = v1 + y z = v2 - y v3 = x + z End Sub Sub Proc6() Static x, y, z... x = v1 + y z = v2 - y v3 = x + z End Sub Público (Projeto) 15
16
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Constantes São locais da memória onde são armazenados dados enquanto o programa está rodando e não podem ter seu valor alterado. Sintaxe para declaração e atribuição de valor: Const Constante As Tipo = Valor Exemplos: Const Pi As Single = 3.1416 Const Sigla As String = "SP" Const Feriado_Independência As Date = #1-sep-2014# Const Mens As String = "Olá", Valor As Double = 3.4567 Constantes predefinidas: Visual Basic: vbGreen, vbTrue, vbCrLf … Excel: xlLeft, xlRight, xlVisible, xlNone, xlPie … Quebra de linha dentro do texto: vbCrLf 16
17
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Escopo das Constantes Módulo 1 Sub Proc1() Const a…... x = a... End Sub Sub Proc1() Const a…... x = a... End Sub Sub Proc2() Const b…... y = b... End Sub Sub Proc2() Const b…... y = b... End Sub Procedimento (Macro) Módulo 2 Private Const i… Sub Proc3() Const a…... x = a y = i... End Sub Sub Proc3() Const a…... x = a y = i... End Sub Sub Proc4() Const b…... x = 0 y = b z = x + i + v1... End Sub Sub Proc4() Const b…... x = 0 y = b z = x + i + v1... End Sub Privativo (Módulo) Módulo 3 Public Const v1… Sub Proc5() Const a…... x = a y = v1... End Sub Sub Proc5() Const a…... x = a y = v1... End Sub Sub Proc6() Const b... x = v1 + y z = b - y... End Sub Sub Proc6() Const b... x = v1 + y z = b - y... End Sub Público (Projeto) 17
18
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Atribuição de Referência a um Objeto Sintaxe: Dim Variável_objeto As Tipo_de_objeto Set Variável_objeto = Objeto Exemplo: Sub Teste() ' Este procedimento usa um objeto repetidas vezes: ActiveCell.CurrentRegion.Offset(1, 0).Select ActiveCell.CurrentRegion.Offset(1, 0).Font.Bold = True ActiveCell.CurrentRegion.Offset(1, 0).Font.Name = "Arial" ActiveCell.CurrentRegion.Offset(1, 0).Font.Size = 12 ActiveCell.CurrentRegion.Offset(1, 0).Value = 0 End Sub 18
19
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Atribuição de Referência a um Objeto (cont.) As instruções precisam estar na sequência. Exemplo sem atribuição de referência, usando a Estrutura With... End With : Sub Teste1() ' Este procedimento usa múltiplas ações sobre o objeto With ActiveCell.CurrentRegion.Offset(1, 0).Select.Font.Bold = True.Font.Name = "Arial".Font.Size = 12.Value = 0 End With End Sub 19
20
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Atribuição de Referência a um Objeto (cont.) As instruções não precisam estar na sequência. Exemplo com atribuição de referência pelas instruções Dim e Set : Sub Teste2() ' Este procedimento usa atribuição de referência ao objeto Dim Área As Range Set Área = ActiveCell.CurrentRegion.Offset(1, 0) Área.Select Área.Font.Bold = True Área.Font.Name = "Arial" Área.Font.Size = 12 Área.Value = 0 End Sub 20
21
Autor: Fernando de Carvalho Navarro E-mail: fernando.c.navarro@gmail.com Múltiplas Ações Sobre um Mesmo Objeto (cont.) Exemplo com atribuição de referência e uso da Estrutura With... End With : Sub Teste3() ' Este procedimento usa múltiplas ações num objeto Dim Área As Range Set Área = ActiveCell.CurrentRegion.Offset(1, 0) With Área.Select.Font.Bold = True.Font.Name = "Arial".Font.Size = 12.Value = 0 End With End Sub 21
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.