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

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

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

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

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

Microsoft Excel Ficha prática n. 8

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

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

Visual Basic for Applications: # 1

Macros e Programação VBA

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

Visual Basic for Applications

Programação em Visual Basic for Applications & Excel

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

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

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

Excel Macros e Visual Basic for Applications. Índice

Informática II Ficha 5_resolução

Objectos Gráficos 1. APROG (Civil) Aula 4. Friday, November 2, 12

1.2 OPERAÇÕES BÁSICAS EM ALGORITMOS E PROGRAMAS 18

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

EDITOR DE VISUAL BASIC FOR APPLICATIONS...

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

Excel Macros e Visual Basic for Applications (versão Draft) Índice

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

Trabalhando com Arquivos de Texto no VBA

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

Introdução Explorando o ambiente de desenvolvimento integrado do Visual Studio... 31

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

Capítulo I Preliminares: Visual Basic na planilha eletrônica Excel.

Simulado de Linguagem de Programação Java

aplicação arquivo Condições Gerais de Utilização

VISUAL BASIC. Sebenta Teórica (versão 1)

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

Conteúdo programático

Usando Macros no. Excel

Manipulando Strings no VBA (Replace, Mid e InStr)

Aplicações - VBA. Programação Interna

Tutorial 1 - Básico do VBA do Excel

Nivel de Linguagem de Montagem (Assembly)

Conhecendo o Delphi 2010

Manipulando Strings no VBA (Replace, Mid e InStr)

Microsoft Visual Studio Express 2012 for Windows Desktop

BARRA DE PROGRESSO EM VBA

Driver Next Versão 1.0 de Português

MANUAL DO INSTALADOR XD EM AMBIENTES MICROSOFT WINDOWS

A linguagem Visual Basic

O que é VBScript? (VBS)

1 Função e criação do Programa. Relatório de desenvolvimento do projecto Programador/designer : Tiago MC Simões

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

Módulo de Aprendizagem I

Inteligência Artificial

Procalc v1.0. Versão Programador

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

Excel Macros e Programação em VBA

Programar. Visual Basic 1/61

Programando Macros Para O OpenOffice.org

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

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

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

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada.

Aula 11: Desvios e Laços

Programa: 1. Option Explicit 2. Sub Explorar() 3. Dim diretorio, fso, i As Integer, ex, d, f 4. Set fso = CreateObject("Scripting.

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

CRIAÇÃO DE TABELAS NO ACCESS. Criação de Tabelas no Access

Excel Avançado. Autor: Leonardo Breyer

10. Acessando o Banco de Dados através do Visual Basic

Oracle Database 10g: Fundamentos de SQL e PL/SQL

Resumo da Matéria de Linguagem de Programação. Linguagem C

Programação em VBA Texto Introdutório. António Silva DEI-Isep

Gestão de Actas Escolares. Manual Utilizador. (Versão 4)

Parte 5 LibreOffice Base

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

Cadeira de Tecnologias de Informação. Ano lectivo 2009/2010. Sites dinâmicos. Com Expression Web TI2009/10 EWD_1. Filipa Pires da Silva (2009)

Laboratório de Banco de Dados Prof. Luiz Vivacqua. PL/pgSQL A Linguagem de programação do PostgreSQL

Microsoft Excel Macro V. Índice 16-) Formulários ) Gerando código para o Formulário... 49

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

Oracle PL/SQL Overview

Departamento: Matemática Curso: Eng a Madeiras Ano: 1 o Semestre: 2 o Ano Lectivo: 2006/2007. Aula prática n o 1 - Introdução ao MATLAB

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

Linguagem de Programação

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

5.2.4 Análise de LCR segundo o tempo Regras de marcação LCR

Rede VPN UFBA Procedimento para configuração

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

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

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

VBA e Excel I. Macros

Tutorial de Computação Introdução a Programação Gráfica em Lazarus Para MEC 1100 v

DESENVOLVIMENTO DE SOFTWARE

Flash MX ActionScript

CAPITULO 5 COMANDO DE FLUXO IF

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.

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

Manual do Fénix. Gestão da ficha de unidade curricular (Portal de coordenador de ECTS) DSI (Versão 1.0)

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

UNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CENTRO 06. Funções, variáveis, parâmetros formais

Transcrição:

Módulo 1a: Introdução ao Visual Basic for Applications (VBA) - Elementos básicos -

O Excel (revisões ou não?) Folha de cálculo baseada em células Usa um sistema de coordenadas (letra, número) Recalcula todas as células a cada alteração - Programação das células: - Fórmulas. - Funções. - Afectação individual ou em grupo Excel.xlsx

VBA = Visual Basic for Applications Programação por objectos para aplicações da Microsoft (excel, word, powerpoint, etc) (linguagem também utilizada nos "macros") - Recursos de programação: - Utilização das funções standard do Visual Basic - Utilização das funções específicas de cada aplicação

Configurações do excel 2013 para permitir execução de código/macros Por questões de segurança o excel vem pré-programado para não correr macros e código VBA. Para habilitar essa possibilidade deve-se proceder da seguinte forma: -> File -> Options -> Trust center -> Trust center settings -> Macro Settings: - Enable all macros - Trust access to the VBA project object model Os ficheiros devem ser gravados com o formato Excel Macro-Enabled Workbook (*.xlsm)

Configurações do excel 2013 para mostrar a tab Developer Por questões de segurança o excel vem pré-programado para não mostrar a tab Developer. Para mostrar a tab Developer : File ->Options-> Customize Ribbon. Em Customize the Ribbon e nos Main Tabs, seleccionar a check box Developer. Para mostrar o ambiente de desenvolvimento VBA: A partir da tab Developer. Clicar no ícone Visual Basic

- O ambiente VBA (configurável): toolbars e menus Explorador de Projecto Janela de código (code) ou Janela de interface gráfica de utilizador (GUI, form) Janela de Propriedades Janela "immediate": Execução imediata Janela "locals": Avaliação de variáveis Janela "watches": Avaliação de expressões

-Programação por objectos: Tipos de entidades: 1. Forms 1.1 Form window 1.2 Form code 2. Modules 2.1 Module code VBA1a.xlsm

-Estrutura da janela de código: Object box Declarations Procedures... Procedure box -Uma janela de código (Form Code ou Module Code) pode ter vários Procedimentos (Procedure) VBA1a.xlsm

-Tipos de procedimentos (Procedures): Sub (subrotina trecho de código) Insert->Procedure Function (função trecho de código com um resultado) Property (função específica para interacção com forms não usada por nós) VBA1b.xlsm

Âmbito das variáveis: -Privadas (Private) -Públicas (Public) - Variáveis não declaradas e utilizadas dentro de um procedimento são consideradas locais (só existem dentro desse procedimento) Não funcionaria - Variáveis declaradas como "Private", só mantêm o seu valor no interior do módulo/form onde foram declaradas. - Variáveis declaradas como "Public" mantêm o seu valor em todos os módulos/forms Funcionaria Funcionaria VBA1a.xlsm

Âmbito dos procedimentos: -Privados (Private) -Públicos (Public) - Procedimentos especificados como "Private" só podem ser chamados dentro do seu módulo/form. - Procedimentos especificados como "Public" podem ser chamados a partir de todos os módulos/forms do projecto. - Procedimentos não especificados são considerados "Public" e podem ser chamados a partir de todos os módulos/forms do projecto. VBA1a.xlsm

- Expressões: As expressões operam sobre variáveis numéricas escalares. São constituídas por: - Números (literais) - Variáveis - Constantes - Operadores - Funções

- Tipos de variáveis: Por defeito, uma variável é "variant (variáveis não declaradas são do tipo variant )

- Tipos de variáveis: Variáveis "user defined" 1º - Declaração de tipo ("type"): Type TipoFichaAluno ' Definir uma estrutura de dados Numero As Single Nome As String Licenciatura As String End Type Declaração e utilização das variáveis "user defined": 2º - Declaração de variável (usando o tipo): Private (ou Public) Aluno as TipoFichaAluno ' Nas declarações iniciais ou Dim Aluno As FichaAluno ' No interior de uma Sub 3º - Utilização da variável (no interior de uma Sub): Aluno.Numero = 39993 Aluno.Nome = "José Maria" Aluno.Licenciatura = "MIEMat" VBA1a.xlsm

- Regras para os Nomes das Variáveis - Nomes das variáveis começam sempre por uma letra -> podem seguir-se letras, números e underscores -> comprimento máximo: 63 caracteres. -> são case-sensitive (distinção entre maiúsculas e minúsculas) Exemplo de nome de variável: Caudal_litros_por_min

Variáveis - Escalares (dos diferentes tipos). Ex: Num_Alunos guarda um valor. - Arrays multidimensionais (dos diferentes tipos). Ex: Alunos(numero,ano) guarda vários valores. numero, ano são inteiros (índices) Constantes - Têm todas as propriedades e requisitos das variáveis. - São "variáveis" fixas. Não podem ser alteradas no decurso do programa. - Não podem ser arrays. VBA1a.xlsm

-Operadores aritméticos - +, adição - -, subtracção - *, multiplicação - /, divisão - \, divisão inteira - ^, potenciação - mod, resto de uma divisão Operadores -Operadores comparativos - =, igualdade - <>, desigualdade (diferença) - >, maior que - <, menor que - >=, maior ou igual que - <=, menor ou igual que -Operadores booleanos - not, negação - and, conjunção - or, disjunção - xor, disjunção exclusiva -Operadores de concatenação - &, une duas strings. Vê sempre as variáveis dadas como strings - +, une duas strings. No entanto, se as variáveis dadas são numéricas, faz a soma aritmética dos valores e não a união das strings

-Funções nativas do VBA Funções São várias dezenas de funções. Consultar o "excel help" a partir do editor VBA (tecla F1) -> Visual Basic for Applications Language Reference -> Functions.

Funções - Troca de informação entre o VBA e as folhas de excel (sheets) Caso "A": Acesso completo Caso "B": Acesso dentro do actual ficheiro de excel Caso "Z": Acesso a uma gama, dentro da actual folha, do actual ficheiro. Z é um array de 2x2. Caso "W" acesso a uma célula através das suas coordenadas num_lin e num_col. "C" é o produto de A por B. A foi lido da célula A1 da Sheet1 do ficheiro VBA2.xlsm B foi lido da célula(1,2), ou seja da célula B1 da sheet1 do workbook que está activo A linha seguinte coloca o resultado "C" na célula C1 da mesma folha. Depois faz-se a concatenação para uma string da expressão: A x B = C Finalmente apresenta-se uma caixa de mensagens com a string. VBA1b.xlsm

Funções -Acesso às funções do excel (para funções específicas que existam no excel, mas não no VBA) Síntaxe: WorksheetFunction.função(args) Exemplo: Sub FuncoesExcel() k = WorksheetFunction.ErfC(C / 10) frase = "erfc(" & C & "/10) = " & Format(k, "0.0##") MsgBox (frase) End Sub Assim, acede-se à função do excel erfc(x), que não está disponível no Visual Basic standard. VBA1b.xlsm

-Controlo de Fluxo (Instruções para controlo do comportamento do programa) GoTo <label> - manda a execução para a linha do <label>: GoTo aqui A = 1 ' não executa! B = 2 ' não executa! aqui: MsgBox ("Executou o GoTo!") If ElseIf Else - Execução condicional: If C = 3 Then MsgBox ("C=3") ElseIf D <> 1 Then MsgBox ("C<>3 and D<>1") Else MsgBox ("C<>3 and D=1") End If VBA1b.xlsm

-Controlo de Fluxo (Instruções para controlo do comportamento do programa) Select Case - Execução caso-a-caso: Select Case C Case 1 MsgBox ("C=1") Case 2 MsgBox ("C=2") Case 3 MsgBox ("C=3") Case Else MsgBox ("C<>1 and C<>2 and C<>3") End Select VBA1b.xlsm

-Controlo de Fluxo (Instruções para controlo do comportamento do programa) For Next (Step) - Ciclo com passo numérico: For i = 0 To 5.5 Step 1.1 MsgBox (i) Next i While Wend - Ciclo com Condição: While C = 3 C = 0 Wend VBA1b.xlsm

-Controlo de Fluxo (Instruções para controlo do comportamento do programa) Do-Loop Until - Ciclo executado até que uma variável mude Do While-Loop - Ciclo executado enquanto uma variável se mantiver Check = True: Counter = 0 ' Inicializa as variáveis. Do ' loop exterior do tipo Loop Do Until. Do While Counter < 20 ' loop interior Do While Loop. Counter = Counter + 1 ' Incrementa Counter. If Counter = 10 Then ' Verifica condição. Check = False ' Muda estado de Check. Exit Do ' Sai do loop interior. End If Loop Loop Until Check = False ' Sai do loop exterior. VBA1b.xlsm

-Activação de Procedimentos e Macros -Opção 1 Atalho de teclado No Editor de excel, tab View, secção Macros -> View Macros : Seleccionar a rotina a activar e clicar options. Seleccionar o Atalho de teclado VBA1b.xlsm

-Activação de Procedimentos e Macros -Opção 2 Activação por botão 1. Na Tab Developer activar Design Mode : 2. Clicar Insert ; ->Form Controls (mais simples de usar) ou 3. P. Ex., inserir um botão 4. Programar a rotina a activar 5. Renomear o botão (opcional) ->ActiveX Controls (mais flexíveis) 6. Desactivar o Design Mode VBA1b.xlsm

- Resolução da Ficha 1