Visual Basic for Applications



Documentos relacionados
Visual Basic for Applications

Visual Basic for Applications: # 1

Visual Basic for Applications

VBA e Excel I. Macros

MICROSOFT EXCEL & VISUAL BASIC FOR APPLICATIONS MÓDULO SPECIALIST

Microsoft Excel & Visual Basic for Applications. Módulo I. Beginner. 2016/ horas

APOSTILA DE VBA PARA EXCEL MARCOS DE BARROS OUTUBRO DE RISK MANAGEMENT

Informática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015. Visual Basic VBA

INTRODUÇÃO À PROGRAMAÇÃO DO ACCESS BASIC

Programação em Visual Basic for Applications & Excel

4 Criação de macros e introdução à linguagem VBA

Excel - VBA. Macrocomandos (Macros) O que é uma macro? São programas que executam

Principais Funções do VBscript

Objectivos. Introdução à programação Macros em Microsoft Excel Introdução ao Visual Basic para Aplicações (VBA)

EXCEL e VBA. Visual Basic for Applications. Tutoriais de VBA

Sumário. Visual Basic Application para Excel. Prof. Luiz Bianchi Universidade Regional de Blumenau

Manipulando Strings no VBA (Replace, Mid e InStr)

Sumário. Capítulo l - Introdução ao VBA

A1;A7 é o mesmo que A1 e A7 A1:A7 é o mesmo que A1 até A7 (abrange A1, A2, A3, A4, A5, A6, A7).

2.3. PHP Tipos de dados e operadores

Manipulando Strings no VBA (Replace, Mid e InStr)

Dim formulário As Object formulário = Me Me.Text = "Título"

A linguagem Visual Basic

Introdução aos cálculos de datas

Módulo 1a: Introdução ao Visual Basic for Applications (VBA)

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Introdução à programação em VBA ÍNDICE

Informática II Ficha 5_resolução

Funções do Project para campos personalizados

ISCAP. Algoritmia. Pág. 1. Ana Paula Teixeira

Avançado. Visão geral do ambiente do VBA Retornar à planilha Excel

Primeiramente lemos a seguinte citação, copiada de Excel-Ajuda:

Curso de Iniciação ao Access Basic (I) CONTEÚDOS

Tarefa Orientada 10 Obter informação a partir de uma tabela

ASP Active Server Pages

Expressões Lógicas Comandos de Seleção

IFTO TÉCNICO EM INFORMÁTICA DESENVOLVIMENTO DE SISTEMAS AULA 01

ASP. Autor: Nicleverson Silva

Módulo III. Folhas de Cálculo

MS-Excel 2010 Essencial (I)

Abaixo do Objeto WorkSheet temos a coleção Cells, que representa todas as células de uma planilha.

Trabalhando com Arquivos de Texto no VBA

Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL

Algoritmia e Programação APROG. Linguagem JAVA. Básico. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31

Construção de um website em ASP

Índice. Excel Básico e Intermédio. Parte 1

12 EXCEL MACROS E APLICAÇÕES

3 Classes e instanciação de objectos (em Java)

OPERADORES E ESTRUTURAS DE CONTROLE

Guia de Estudo Folha de Cálculo Microsoft Excel

Para testar seu primeiro código utilizando PHP, abra um editor de texto (bloco de notas no Windows) e digite o código abaixo:

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções)

Avançado. Visão geral do ambiente do VBA Retornar à planilha Excel

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema

Noções básicas sobre macros no Access 97. Construção de algumas macros simples. Noções básicas sobre procedimentos VBA no Access 97

INTRODUÇÃO OBJECT PASCAL/DELPHI

ASP. Active Server Page. Scripts. ASP teoricamente suportaria qualquer linguagem de script, mas na prática os aceitados são. VBScript MS JScript

Javascript 101. Parte 2

Aplicações de Escritório Electrónico

Visual Basic e Java. À primeira vista o Java é completamente diferente do Visual Basic. Realmente as duas linguagens pertencem a mundos distintos.

Sintaxe Básica de Java Parte 1

Faculdade de Ciências Universidade Agostinho Neto Departamento de Matemática e Engenharia Geográfica Ciências da Computação

Sub AcessaWeb(url, x) ' recebe uma url para pesquisar e devolve uma planilha ' Solicita a criação da planilha x

e à Linguagem de Programação Python

Informática II EXCEL. Visual Basic (TÓPICOS ABORDADOS NAS AULAS DE INFORMÁTICA II) Por: Cristina Wanzeller / Jorge Loureiro

Excel 2016 Avançado Plano de Aula - 24 Aulas (Aulas de 1 Hora)

EXCEL. Visual Basic. Informática II Gestão Comercial e da Produção (TÓPICOS ABORDADOS NAS AULAS DE INFORMÁTICA II)

Microsoft Visual Basic Family. Microsoft VBScript

Formação Microsoft Excel Nível Intermédio

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Tutorial 2 Básico do VBA do Excel

Lista de Funções em Excel

PL/SQL. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Laboratório de Bases de Dados PL/SQL

5. NOÇÕES DE PROGRAMAÇÃO

Nesta aula serão apresentados alguns comandos de condição, repetição e gráficos.

Conceitos Básicos de C

Collections. Objecto Collection. Propriedades e métodos

Algoritmos em Javascript

Excel 2013 Avançado Plano de Aula - 24 Aulas (Aulas de 1 Hora).

Plano de Aula - Excel 2016 Avançado - cód Horas/Aula

MATRIZ DE EXAME DE EQUIVALÊNCIA À FREQUÊNCIA

VBA e Access Modo de interacção

Introdução ao SQL. O que é SQL?

Conteúdos dos Cursos de Excel

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP

Procalc v1.0. Versão Programador

Introdução à Linguagem

Notas sobre o MySQL: Resumo dos comandos no MySQL linha de comandos:

APOSTILA PHP PARTE 1

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

Findo o processo de normalização, obtemos o conjunto de tabelas indicado na tabela 1.28.

Formadora: Vanda Martins 2

INF 1005 Programação I

FTIN Formação Técnica em Informática Módulo de Automação de Escritório AULA 05. Prof. Fábio Diniz

FICHA ORIENTADA Nº1. Barra de fórmulas. Área de trabalho T E C N O L O G I A S D E I N F O R M A Ç Ã O E C O M U N I C A Ç Ã O

CRIANDO FUNÇÕES EM VISUAL BASIC PARA TRANSFORMAÇÕES DE GRAUS SEXAGESIMAIS

Deverá ser apresentada uma caixa de combinação para auxiliar o utilizador a escolher o distrito de residência do entrevistado.

Transcrição:

Visual Basic for Applications Introdução É uma linguagem de programação baseada na conhecida linguagem BASIC Está concebida para funcionar em conjunto com diferentes aplicações, de forma a potenciar a robustez das mesmas Enquadra-se nos ambientes de programação baseados no processamento de sequência de eventos (event-driven programming) História Foi inicialmente integrada com o Excel 5 em 1994 e a partir daí a sua expansão para outras aplicações foi gradual Foi com a saída do Office 97 em 1997 que a Microsoft concretizou um dos seus grandes objectivos: ter um ambiente de programação completamente integrado entre os seus quatro famosos produtos: Word, Excel, Access e PowerPoint Actualmente, o VBA é já por si só um produto independente, que outras companhias podem adoptar e incorporar nas suas aplicações Visual Basic for Applications: # 1

Variáveis I Declaração explícita de variáveis Declarar uma variável VAR: Dim VAR Declarar uma variável VAR como sendo do tipo TYPE: Dim VAR As TYPE Declaração implícita de variáveis Possibilidade de não declarar variáveis Variáveis não declaradas ou sem declaração de tipo têm por defeito o tipo Variant Não permitir o uso de variáveis implícitas: Option Explicit Visibilidade e longevidade de uma variável Public: visível em todos os módulos e durante toda a execução Private ou Dim: visível dentro do seu módulo e durante toda a execução Dim: visível dentro do seu procedimento e durante a sua execução Static: visível dentro do seu procedimento e durante toda a execução Constantes System-defined constants: True; False; Null; Empty; Nothing Intrinsic constants (bibliotecas do VBA): Const LEFT_BUTTON = 1 Symbolic constants: Const PI = 3,14 Visual Basic for Applications: # 2

Variáveis II Tipo de variáveis Variant tipo genérico Byte 0 até 255 Boolean True ou False Integer -32.768 até 32.767 Long -2.147.483.648 até 2.147.483.647 Single -3,402823E38 até -1,401298E-45 (para valores negativos) 1,401298E-45 até 3,402823E38 (para valores positivos) Double -1,79769313486232E308 até -4,94065645841247E-324 (negativos) 4,94065645841247E-324 até 1,79769313486232E308 (positivos) Currency -922.337.203.685.477,5808 até 922.337.203.685.477,5807 Decimal +/-79.228.162.514.264.337.593.543.950.335 (sem casas decimais) +/-7,9228162514264337593543950335 (com casas decimais) Date 1 de Janeiro de 100 até 31 de Dezembro de 9999 String 1 até aproximadamente 2 biliões de caracteres (65.400 se tamanho fixo) Type definido pelo utilizador Object referência a objectos Visual Basic for Applications: # 3

Operadores I Aritméticos + (adição) - (subtracção e negação) * (multiplicação) / (divisão) \ (divisão inteira) ^ (exponenciação) Mod (resto da divisão) Relacionais = (igual a) > (maior que) < (menor que) <> (diferente de) >= (maior ou igual) <= (menor ou igual) Like (padrões de texto) Is (referência de objectos) Lógicos And (e lógico) Or (ou lógico) Not (negação) Imp (implicação) Xor (ou exclusivo) Eqv (equivalência) Texto & (concatenação) Visual Basic for Applications: # 4

Operadores II Precedências Operador Operação ^ exponenciação - negação *, / multiplicação e divisão \ divisão inteira Mod resto da divisão +, - adição e subtracção & concatenação =, >, <, <>, >=, <=, Like, Is comparação And, Or, Not, Imp, Xor, Eqv lógica Outros caracteres Rem ou comentários : múltiplas instruções na mesma linha _ uma instrução em múltiplas linhas Visual Basic for Applications: # 5

Procedimentos Procedimentos Sub [Public Private] [Static] Sub nome ( [argumentos] ) [Exit Sub] End Sub Procedimentos Function [Public Private] [Static] Function nome ( [argumentos] ) [As tipo] [nome = expressão] [Exit Function] [nome = expressão] End Function Visual Basic for Applications: # 6

Argumentos Declarar argumentos [Optional] [ByRef ByVal] [ParamArray] argumento[( )] [As tipo] [=valor_por_defeito] Passar e nomear argumentos Exemplo: Function area (comp As Integer, alt As Integer) As Integer Passar argumentos: var = area(5, 4) Nomear argumentos: var = area (alt:= 4, comp:= 5) Opções de declaração ByRef: declara que o argumento é passado por referência (o procedimento recebe o próprio endereço da variável passada como argumento) ByVal: declara que o argumento é passado por valor (o procedimento apenas recebe o valor da variável passada como argumento) Optional: declara que o argumento não é obrigatório (esta declaração implica que os restantes argumentos sejam igualmente declarados como Optional) ParamArray: declara um número arbitrário de argumentos não obrigatórios (esta declaração só pode ser utilizada como último argumento na lista de argumentos) Visual Basic for Applications: # 7

Arrays Declarar arrays Dim nome (limite_superior) As tipo Dim nome (limite_inferior To limite_superior) As tipo Option Base 1 Preencher arrays Atribuição directa por elemento Função Array Arrays com mais do que uma dimensão Dim nome (limite_superior_1,..., limite_superior_n) As tipo Arrays dinâmicos ReDim: redefine os limites de um dado array Redim Preserve: redefine os limites de um dado array e preserva os valores nele existentes (é aplicável apenas quando se redefine a última dimensão do array) LBound: devolve o limite inferior de um dado array UBound: devolve o limite superior de um dado array Visual Basic for Applications: # 8

Estruturas de Decisão Execução condicional If condição_1 Then... [ElseIf condição_n Then ] [Else ] End If Múltiplos testes Select Case expressão_a_testar Case lista_de_expressões_1... [Case lista_de_expressões_n ] [Case Else ] End Select Macros IIf (condição, valor_se_verdade, valor_se_falso) Switch (condição_1, valor_1,, condição_n, valor_n) Choose (índice, valor_1,, valor_n) Visual Basic for Applications: # 9

Código em Ciclo Ciclos condicionais Do {While Until} condição [Exit Do] Loop Ciclos numeráveis For contador = início To fim [Step incremento] [Exit For] Next [contador] Do [Exit Do] Loop {While Until} condição For Each elemento In colecção [Exit For] Next [elemento] Visual Basic for Applications: # 10

Funções Básicas I Conversão de dados CBool (expressão) CCur (expressão) CDbl (expressão) CLng (expressão) CVar (expressão) CByte (expressão) CDate (expressão) CInt (expressão) CSng (expressão) CStr (expressão) Testes sobre os dados IsArray (variável) IsEmpty (variável) IsNull (variável) TypeName (variável) IsDate (expressão) IsNumeric (expressão) IsMissing (argumento) VarType (variável) Caixas de mensagem MsgBox (mensagem [, ]) InputBox (mensagem [, ]) Visual Basic for Applications: # 11

Funções Básicas II Manipulação de strings Asc (string) LCase (string) Mid (string, início [, comprimento]) Trim (string) Str (número) InStr ([início,] string_geral, string_procura) Chr (código) Len (string variável) Left (string, comprimento) LTrim (string) Val (string) StrComp (string1, string2 [, método]) Manipulação de datas e horas Date Time Now DateSerial (ano, mês, dia) TimeSerial (hora, minuto, segundo) Weekday (data) Year (data) Month (data) Day (data) Hour (hora) Minute (hora) Second (hora) Visual Basic for Applications: # 12

Macros Menu <Ferramentas> seguido da opção <Macro> Gravar macros: botões <Terminar gravação> e <Referência relativa> Executar e editar macros VBA e Excel I Visual Basic for Applications: # 13

Formulários Menu <Ver> seguido das opções <Barras de ferramentas> e <Formulários> Ligar células aos controlos: menu <Formatar> seguido da opção <Controlo...> e do separador <Controlo> Atribuir macros aos controlos: Menu específico sobre o controlo seguido da opção <Atribuir macro...> VBA e Excel II Visual Basic for Applications: # 14

Editor do Visual Basic Projecto Propriedades Código VBA e Excel III Visual Basic for Applications: # 15

Código VBA e Funções do Excel Código VBA como função do Excel Funções do Excel como código VBA Visual Basic for Applications: # 16

Objectos I Conceito Qualquer coisa que numa aplicação se pode ver e manipular de algum modo Formas de manipular um objecto Alterar o seu conjunto de propriedades Activar métodos específicos do objecto para executar determinadas tarefas Associar procedimentos aos eventos que podem ocorrer sobre o objecto Propriedades As propriedades são os atributos que definem as características dos objectos ActiveCell.Formula = "=A1*10" Certas propriedades são elas mesmas objectos ActiveCell.Font.Italic = True Existem propriedades que são só de leitura col = ActiveCell.Column Visual Basic for Applications: # 17

Objectos II Métodos Os métodos são acções que descrevem o que os objectos podem fazer São executados sobre os objectos e podem conter ou não argumentos ActiveCell.Clear ActiveCell.AddComment "comentário" Eventos Os eventos são algo que acontece aos objectos Ocorrem como resultado de acções do utilizador, do sistema ou do próprio código Private Sub Worksheet_Activate() Classes e instâncias Classe de objectos: conjunto de objectos com as mesmas propriedades, com os mesmos métodos e que respondem aos mesmos eventos Instância: todo o objecto particular de uma classe Visual Basic for Applications: # 18

Objectos III Hierarquia de objectos Application: objecto de topo da hierarquia de objectos Caminhos hierárquicos Application.Workbooks( Livro1 ).Worksheets( Folha1 ) Caminhos únicos podem ser abreviados Worksheets( Folha1 ) ActiveCell Collection: tipo de objecto que resulta da colecção de outros objectos Variáveis como objectos Tipo de dados Object A instrução Set A constante Nothing O operador Is A variável Me Múltiplas acções sobre um objecto With objecto End With Visual Basic for Applications: # 19

Objectos Workbook Referenciação [Application.]Workbooks( Livro1 ) [Application.]ActiveWorkbook Workbooks Collection [Application.]Workbooks.Add [Application.]Workbooks.Close Propriedades workbook.name workbook.fullname Métodos workbook.activate workbook.close(savechanges, FileName) workbook.protect(password, Structure, Windows) Eventos Private Sub Workbook_Activate() Private Sub Workbook_Open() Private Sub Workbook_Newsheet(ByVal Sh As Object) [Application.]Workbooks(1) [Application.]ThisWorkbook [Application.]Workbooks.Open(FileName) [Application.]Workbooks.Count workbook.path workbook.saved workbook.save workbook.saveas(filename) workbook.unprotect(password) Visual Basic for Applications: # 20

Referenciação Sheets = Worksheets + Charts Objectos Worksheet [ActiveWorkbook.]Worksheets( Folha1 ) [ActiveWorkbook.]ActiveSheet Worksheets Collection [ActiveWorkbook.]Worksheets.Add(Before, After, Count) [ActiveWorkbook.]Worksheets.Count Propriedades worksheet.name Métodos worksheet.activate worksheet.delete [ActiveWorkbook.]Worksheets(1) worksheet.visible worksheet.copy(before, After) worksheet.move(before, After) worksheet.protect(passwd, DrawingObjs, Contents) worksheet.calculate Eventos Private Sub Worksheet_Calculate() Private Sub Worksheet_Change(ByVal Target As Excel.Range) Visual Basic for Applications: # 21

Referenciação [ActiveSheet.]Range( B2:C3 ) [ActiveSheet.]Range( Lucro ) Objectos Range [ActiveSheet.]Range( A1, B2:C3 ) [ActiveSheet.]Range( B2, C3 ) [ActiveSheet.]Cells(1, 2) [ActiveSheet.]Range( B2:C3 ).Cells(1, 2) Propriedades range.row range.column range.rows(index) range.offset(rowoffset, ColumnOffset) range.formula range.formular1c1 range.address(rowabsolute, ColumnAbsolute) Métodos range.select range.copy(destination) range.clear range.clearcontents range.filldown range.fillleft range.columns(index) range.value range.formulalocal range.formular1c1local range.count range.calculate range.cut(destination) range.clearcomments range.clearformats range.fillup range.fillright Visual Basic for Applications: # 22