Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Introdução à Programação de Macros no Excel: Guia Completo para Iniciantes, Manuais, Projetos, Pesquisas de Microsoft Excel

Apostilas para ajudar no excel

Tipologia: Manuais, Projetos, Pesquisas

2020

Compartilhado em 21/09/2020

bruno-novacky-araujo-da-silva-9
bruno-novacky-araujo-da-silva-9 🇧🇷

5

(1)

3 documentos

1 / 122

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Excel Macros e Visual Basic for Applications
(versão Draft)
______________________________________________________________________________________
ISCTE / DCTI 1 / 122
Luisa.Domingues@iscte.pt
Índice
MACROS .........................................................................................................................................................................5
O QUE É UMA MACRO?................................................................................................................................................ 6
CRIAR MACROS............................................................................................................................................................ 6
Gravar uma Macro .................................................................................................................................................6
Exercício................................ ................................................................................................ ................................ 8
Procedimento BackGround do Excel ..................................................................................................................... 9
Programação em Visual Basic for Applications.............................................................................................10
EXECUTAR UMA MACRO...........................................................................................................................................12
Tecla de Atalho Shortcut Key..........................................................................................................................12
Botão na Toolbar..................................................................................................................................................13
Associar uma Macro a um Botão.........................................................................................................................13
Dissociar uma Macro de um Botão .....................................................................................................................15
Run...........................................................................................................................................................................16
Comando no Menu................................................................................................................................................17
Associação de uma Macro a um Comando do Menu ..........................................................................................17
Dissociação ..........................................................................................................................................................19
Editor de Visual Basic for Applications............................................................................................................20
REMOVER MACROS....................................................................................................................................................21
Remoção de Macros em Ambiente Excel..........................................................................................................21
Remoção de Macros no Editor de VBA.............................................................................................................21
EDITOR DE VISUAL BAS IC FOR APPLICATIONS....................................................................................22
PROJECT EXPLORER...................................................................................................................................................24
PROPERTIES WINDOW ................................................................................................................................................26
JANELA DE EDIÇÃO....................................................................................................................................................27
OBJECT BROWSER......................................................................................................................................................28
HELP ON-LINE............................................................................................................................................................28
AS CORES DO VBA....................................................................................................................................................29
FUNÇÕES E SUBROTINAS ...................................................................................................................................30
SUBROTINAS...............................................................................................................................................................32
Definição de SubRotinas.....................................................................................................................................32
Trabalhar no Editor de VBA Criar uma SubRotina....................................................................................33
Execução de uma SubRotina...............................................................................................................................34
FUNÇÕES......................................................................................................................................................................34
Definição de Funções...........................................................................................................................................34
Definição do tipo de parâmetros e do tipo da função....................................................................................35
Trabalhar no Editor de VBA Criar uma Função.........................................................................................36
Execução de uma Função....................................................................................................................................37
Execução dentro de uma Célula ..........................................................................................................................38
Execução dentro de uma Rotina ..........................................................................................................................40
DIFERENÇAS ENTRE FUNÇÕES E ROTINAS..............................................................................................................42
REGRAS PARA A PASSAGEM DE PARÂMETROS........................................................................................................42
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Pré-visualização parcial do texto

Baixe Introdução à Programação de Macros no Excel: Guia Completo para Iniciantes e outras Manuais, Projetos, Pesquisas em PDF para Microsoft Excel, somente na Docsity!

(versão Draft)

(versão Draft)

(versão Draft)

  • ISCTE / DCTI 1 / ______________________________________________________________________________________
  • MACROS Índice
    • O QUE É UMA MACRO?................................................................................................................................................
    • CRIAR MACROS............................................................................................................................................................
      • Gravar uma Macro
        • Exercício................................................................................................................................................................
        • Procedimento BackGround do Excel
      • Programação em Visual Basic for Applications.............................................................................................
    • EXECUTAR UMA MACRO...........................................................................................................................................
      • Tecla de Atalho – Shortcut Key..........................................................................................................................
      • Botão na Toolbar..................................................................................................................................................
        • Associar uma Macro a um Botão.........................................................................................................................
        • Dissociar uma Macro de um Botão .....................................................................................................................
      • Run...........................................................................................................................................................................
      • Comando no Menu................................................................................................................................................
        • Associação de uma Macro a um Comando do Menu ..........................................................................................
        • Dissociação ..........................................................................................................................................................
      • Editor de Visual Basic for Applications............................................................................................................
    • REMOVER MACROS....................................................................................................................................................
      • Remoção de Macros em Ambiente Excel..........................................................................................................
      • Remoção de Macros no Editor de VBA.............................................................................................................
  • EDITOR DE VISUAL BAS IC FOR APPLICATIONS....................................................................................
    • PROJECT EXPLORER...................................................................................................................................................
    • PROPERTIES WINDOW ................................................................................................................................................
    • JANELA DE EDIÇÃO....................................................................................................................................................
    • OBJECT BROWSER......................................................................................................................................................
    • HELP ON-LINE ............................................................................................................................................................
    • AS CORES DO VBA....................................................................................................................................................
  • FUNÇÕES E SUBROTINAS ...................................................................................................................................
    • SUBROTINAS...............................................................................................................................................................
      • Definição de SubRotinas .....................................................................................................................................
      • Trabalhar no Editor de VBA – Criar uma SubRotina....................................................................................
      • Execução de uma SubRotina...............................................................................................................................
    • FUNÇÕES......................................................................................................................................................................
      • Definição de Funções...........................................................................................................................................
      • Definição do tipo de parâmetros e do tipo da função....................................................................................
      • Trabalhar no Editor de VBA – Criar uma Função.........................................................................................
      • Execução de uma Função....................................................................................................................................
        • Execução dentro de uma Célula ..........................................................................................................................
        • Execução dentro de uma Rotina ..........................................................................................................................
    • DIFERENÇAS ENTRE FUNÇÕES E ROTINAS..............................................................................................................
    • REGRAS PARA A PASSAGEM DE PARÂMETROS........................................................................................................
  • ISCTE / DCTI 2 / ______________________________________________________________________________________
  • VARIÁVEIS ..................................................................................................................................................................
    • MANUSEAMENTO COM VARIÁVEIS..........................................................................................................................
      • O que são variáveis?............................................................................................................................................
      • Assignação de valores a variáveis:...................................................................................................................
      • Utilização de variáveis como se fossem valores: ............................................................................................
    • TIPOS DE VARIÁVEIS ..................................................................................................................................................
    • DECLARAÇÃO DE VARIÁVEIS...................................................................................................................................
    • VARIÁVEIS – VANTAGENS DA UTILIZAÇÃO............................................................................................................
    • VARIÁVEIS DO TIPO OBJECTO..................................................................................................................................
      • Declaração da Variável Objecto........................................................................................................................
      • Atribuição de uma variável Objecto..................................................................................................................
      • Utilização Genérica da Variável Objecto........................................................................................................
      • Utilização Especifica da Variável Objecto ......................................................................................................
    • VARIÁVEIS – DECLARAÇÃO OPCIONAL E O TIPO VARIANT .................................................................................
      • Os Prós e Contras da Utilização do tipo Variants .........................................................................................
        • Prós......................................................................................................................................................................
        • Contras.................................................................................................................................................................
      • Variáveis – Declaração Forçada.......................................................................................................................
    • VARIÁVEIS – TIPOS DEFINIDOS PELO UTILIZADOR - ESTRUT URAS.......................................................................
      • Definição do Tipo .................................................................................................................................................
      • Utilização das Estruturas de Dados..................................................................................................................
    • VARIÁVEIS – ARRAYS ...............................................................................................................................................
      • O que é um Array? ..............................................................................................................................................
        • Array Uni-Dimensional .......................................................................................................................................
        • Array Bi-Dimensional .........................................................................................................................................
      • Declaração de um array......................................................................................................................................
        • Arrays Uni-dimensionais .....................................................................................................................................
        • Arrays Bi-dimensionais .......................................................................................................................................
      • Utilização de um Array........................................................................................................................................
        • Para aceder ao elemento......................................................................................................................................
        • Atribuição de valores ...........................................................................................................................................
      • Option Base e Array Bounds...............................................................................................................................
  • CONSTANTES .............................................................................................................................................................
    • O QUE SÃO CONSTANTES? ........................................................................................................................................
  • INPUTBOX E MSGBOX ..........................................................................................................................................
    • O QUE SÃO ?................................................................................................................................................................
    • INPUT BOX ...................................................................................................................................................................
      • O que faz….............................................................................................................................................................
      • Sintaxe.....................................................................................................................................................................
      • Parâmetros.............................................................................................................................................................
    • MSGBOX ......................................................................................................................................................................
      • O que faz….............................................................................................................................................................
      • Sintaxe.....................................................................................................................................................................
      • Parâmetros.............................................................................................................................................................
      • Valores Produzidos…...........................................................................................................................................
  • DOMÍNIO DAS VARIÁVEIS, CONSTANTES E ROTINAS........................................................................
    • O QUE É O DOMINIO?..................................................................................................................................................
    • DOMÍNIO DAS VARIÁVEIS.........................................................................................................................................
      • Âmbito do Procedimento .....................................................................................................................................
      • Âmbito do Módulo................................................................................................................................................
      • Âmbito do Projecto...............................................................................................................................................
    • DOMÍNIO DAS CONSTANTES.....................................................................................................................................
      • Âmbito do Procedimento .....................................................................................................................................
  • ISCTE / DCTI 3 / ______________________________________________________________________________________ - Âmbito do Módulo................................................................................................................................................ - Âmbito do Projecto...............................................................................................................................................
    • DOMÍNIO DE SUBROTINAS E FUNÇÕES...................................................................................................................
  • ESTRUTURAS DE CONTROLO ..........................................................................................................................
    • O QUE SÃO ESTRUTURAS DE CONTROLO? ...............................................................................................................
    • QUAIS AS ESTRUTURAS….........................................................................................................................................
    • IF-THEN-ELSE.............................................................................................................................................................
      • Função IF do Excel..............................................................................................................................................
      • Sintaxe da Estrutura If-Then-Else......................................................................................................................
      • Aplicação Prática .................................................................................................................................................
      • A instrução adicional ElseIf...............................................................................................................................
        • Aplicação Prática .................................................................................................................................................
    • FOR – NEXT.................................................................................................................................................................
      • Sintaxe.....................................................................................................................................................................
      • Aplicação Prática .................................................................................................................................................
        • A Função das Variáveis:......................................................................................................................................
        • Construção do Ciclo: ...........................................................................................................................................
        • Tradução Integral.................................................................................................................................................
      • Funcionamento do Ciclo:....................................................................................................................................
      • Perigos associados à utilização do ciclo For-Next:.......................................................................................
      • Outra Aplicação....................................................................................................................................................
    • WHILE-WEND.............................................................................................................................................................
      • Sintaxe.....................................................................................................................................................................
      • Aplicação Prática .................................................................................................................................................
        • A Função das Variáveis:......................................................................................................................................
        • Construção do Ciclo: ...........................................................................................................................................
        • Tradução Integral.................................................................................................................................................
      • Funcionamento do Ciclo .....................................................................................................................................
      • Perigos associados à utilização do ciclo While-Wend...................................................................................
      • Outra Aplicação....................................................................................................................................................
    • DO – LOOP...................................................................................................................................................................
      • Sintaxe.....................................................................................................................................................................
      • Aplicações Práticas..............................................................................................................................................
    • SELECT CASE ..............................................................................................................................................................
      • Sintaxe.....................................................................................................................................................................
      • Aplicação Prática .................................................................................................................................................
        • Construção da Estrutura.......................................................................................................................................
    • FOR – EACH – NEXT...................................................................................................................................................
      • Sintaxe.....................................................................................................................................................................
      • Aplicações Práticas..............................................................................................................................................
        • Utilizando Arrays.................................................................................................................................................
          • Construção do Ciclo......................................................................................................................................
        • Utilizando Colecções de Objectos.....................................................................................................................
  • COLECÇÕES DE OBJECTOS E OBJECTOS
    • O QUE SÃO OBJECTOS ?...........................................................................................................................................
    • OBJECTOS: PROPRIEDADES, MÉTODOS E EVENTOS............................................................................................
      • Propriedades
      • Métodos...............................................................................................................................................................
      • Eventos.................................................................................................................................................................
    • OBJECTOS MAIS UTILIZADOS NO EXCEL............................................................................................................... - Propriedades - Métodos............................................................................................................................................................. - Propriedades - Métodos............................................................................................................................................................. - Propriedades
  • ISCTE / DCTI 4 / ______________________________________________________________________________________ - Métodos............................................................................................................................................................. - Propriedades - Métodos.............................................................................................................................................................
    • OBJECTOS SINGULARES VS COLECÇÕES DE OBJECTOS..........................................................................
    • INDEXAÇÃO DE COLECÇÕE S POR NÚMERO OU NOME..........................................................................................
      • Indexação com Base em Números..................................................................................................................
      • Indexação com Base no Nome
        • Vantagem...........................................................................................................................................................
      • O Objecto Range – uma excepção..................................................................................................................
        • Tratamento como objecto:
        • Tratamento como colecção de objectos:............................................................................................................
    • REFERÊNCIA IMPLÍCITA...........................................................................................................................................
      • Declaração implícita da aplicação:...............................................................................................................
      • Declaração implícita do WorkBook:..............................................................................................................
      • Declaração implícita da WorkSheet:.............................................................................................................
      • Nível de referência a privilegiar.....................................................................................................................
  • MISCELLANEOUS
    • A INSTRUÇÃO WITH.................................................................................................................................................
      • Aplicação Prática
    • OUTRAS FUNÇÕES ÚTEIS DO VBA ........................................................................................................................

(versão Draft)


ISCTE / DCTI 5 / 122

Ma Maccrrooss

(versão Draft)


ISCTE / DCTI 7 / 122

  1. O nome da Macro será constituído por um conjunto de caracteres que identificarão a Macro e a sua funcionalidade.
  2. Shortcut Key – é composto por uma comb inação de teclas que poderão ser utilizadas para executar uma macro.
  3. Opte por armazenar a macro numa das seguintes alternativas: This Workbook, New Workbook ou Personal Workbook, sendo que cada uma corresponde a macros de âmbito diferente. Assim deverão armazenar a macro na opção ThisWorkBook para que ela esteja activa sempre que o documento estiver aberto, e para que ela esteja armazenada no próprio ficheiro não correndo o risco de ficar armazenada nas Macros do Excel. (na rede do ISCTE é impossível gravar a macro no Personal WorkBook.)
  4. No campo Description, introduza um comentário à função – este poderá ser importante para que não seja esquecido o respectivo objectivo e funcionalidade.
  5. Clique em OK para iniciar a gravação da macro – neste momento será exibida uma toolbar semelhante à da figura 2, e o ícone do rato será transformado numa cassete, indicando o estado de gravação.

Fig.2 – Toolbar exibida para a gravação de macros.

  1. Na toolbar Stop Record, existem dois botões: Stop Recording e Relative Reference – O botão de Stop Recording termina a gravação da macro, o botão de Relative Reference selecciona o modo de gravação da macro – se é feito com base em referências relativas (botão seleccionado) ou referências absolutas.
  2. No caso da toolbar Stop Record desaparecer, poderá voltar a exibi- la fazendo no menu a sequência: View / Toolbars / Stop Record (seleccione a toolbar). Caso a toolbar não apareça listada a gravação de macros não está activa.

Nota: Tome atenção aos passos que dá quando está a gravar pois tudo será registado, o que significa que quando for executar a macro, esses procedimentos serão efectuados.

(versão Draft)


ISCTE / DCTI 8 / 122

EXERCÍCIO

Objectivo: Gravar uma macro testando a diferença entre a execução de macros com

referências absolutas e relativas.

1ª Fase: Macro com referências Absolutas

  1. Accione a gravação da macro. Atribua-lhe o Short Key Ctrl+P
  2. Certifique-se que o botão Relative Reference está desactivado.
  3. Clique na célula B3.
  4. Escreva ISCTE
  5. Formate a célula para Bold, Itálico, tamanho 18, Small Caps,… (utilize o Format / Font) 6. Na célula B4 escreva: Av. Forças Armadas
  6. Na célula B5 escreva: 1700 Lisboa
  7. Pare a gravação da macro. – A macro está criada.
  8. Apague tudo o que escreveu nas células da coluna B.
  9. Clique na célula L8.
  10. Carregue simultaneamente nas teclas Ctrl e P
  11. O que aconteceu?

2ª Fase: Macro com referências Relativas

  1. Seleccione a célula D5.
  2. Accione a gravação da macro. Atribua-lhe o Short Key Ctrl+R
  3. Seleccione o botão Relative Reference.
  4. Escreva ISCTE na célula que havia sido seleccionada.
  5. Formate a célula para Bold, Itálico, tamanho 18, Small Caps,… (utilize o Format / Font) 6. Na célula D6 escreva: Av. Forças Armadas
  6. Na célula D7 escreva: 1700 Lisboa
  7. Pare a gravação da macro. – A macro está criada.
  8. Apague tudo o que escreveu nas células da coluna D.
  9. Clique na célula L8.
  10. Carregue simultaneamente nas teclas Ctrl e R
  11. O que aconteceu? Porquê?

(versão Draft)


ISCTE / DCTI 10 / 122

Programação em Visual Basic for Applications

  1. Para aceder ao editor de Visual Basic for Applications: Tools / Macro / Visual Basic Editor (para se familiarizar mais com o editor consulte o capitulo Editor Visual Basic for Applications e o capitulo Funções e SubRotinas )

Figura 3 – Editor de Visual Basic for Applications

  1. Para inserir um módulo faça Insert / Module – isto porque as macros que construir deverão ser escritas dentro de um módulo (repare na Figura 3 que o Module 1 está seleccionado na janela de projecto e do lado direito tem-se uma área de edição onde poder-se-ão escrever as macros a executar)

(versão Draft)


ISCTE / DCTI 11 / 122

  1. Pode agora programar os procedimentos manualmente ou com recurso a algumas funcionalidades do Editor:

a) Insert / Procedure – insere um procedimento para o qual deverá indicar o tipo de procedimento.

b) Quando estiver a introduzir as variáveis haverá de ser exibida a lista de tipos de variáveis possível.

  1. Sempre que precisar de construir uma macro mais ou menos complicada, se não conhecer muito de VBA poderá começar por gravar no EXCEL pequenas macros com operações muito simples e depois no editor de VBA tentar compreender a sua funcionalidade e assim construir uma macro cada vez mais complexa, completa e adequada às suas exigências.
  2. Poderá em cada macro fazer uma chamada a uma outra macro, bastando para tal escrever o respectivo nome.
  3. No Editor de Visual Basic for Applications poderá encontrar ajuda para o desenvolvimento do seu procedimento. Assim:

6.1. Clique no Ícone do Object Browser ou View/Object Browser ou F

6.2. Na Caixa de Drop-Down onde aparece referido , seleccione a aplicação para a qual pretende ajuda – neste caso Excel. Convém referir que poderá utilizar as funções de toda e qualquer aplicação.

6.3. Na área intitulada por Classes aparecem todos os objectos específicos para o manuseamento da aplicação seleccionada. A classe especial designada por Globals refere-se às funções que estão disponíveis na aplicação independentemente dos objectos seleccionados.

6.4. Seleccione um dos objectos e visualize do lado direito os Members of “

6.5. Para cada membro da classe dispõe de um help on- line que o esclarece sobre a respectiva função e funcionamento, dando exemplo que poderá testar. Para tal basta clicar sobre o botão de Help da janela do Object Browser.

(versão Draft)


ISCTE / DCTI 13 / 122

Botão na Toolbar

ASSOCIAR UMA MACRO A UM BOTÃO

  1. View / Toolbars / Customize
  2. Na janela do Customize seleccione o Commands Tab
  3. Seleccione a categoria Macro (visualizará a caixa de diálogo exibida na Figura 4)

Fig.4 – caixa de diálogo para assignação de botão a macros

(versão Draft)


ISCTE / DCTI 14 / 122

  1. Na área respeitante aos Commands serão exibidos dois itens: Custom Menu Item e Custom Button. Seleccione este segundo e arraste-o com o rato até à Toolbar onde o pretende inserir. Atenção só poderá inserir o botão quando o ponteiro do rato ficar

com a forma I. Nesse momento libertará o botão do rato utilizado para o arrastamento

e verificará que será criado um novo botão.

  1. Na janela de Customize poderá ainda utilizar dois botões que se encontram na área do Selected Command: a) Description – que exibe um texto explicando o que o comando seleccionado faz. b) Modify Selection – semelhante ao clique sobre o botão criado, exibe uma série de tarefas possíveis para configuração do botão ( ve r operações seguintes).

Fig.5 – Menu para configuração do botão da toolbar

(versão Draft)


ISCTE / DCTI 16 / 122

Run

  1. Tools / Macro / Macros
  2. Na caixa de diálogo Macros selecciona-se a macro pretendida na lista da Macro Name (Figura 6)
  3. Clique sobre o botão Run

Fig.6– Janela para selecção da macro a executar

(versão Draft)


ISCTE / DCTI 17 / 122

Comando no Menu

ASSOCIAÇÃO DE UMA MACRO A UM COMANDO DO

MENU

  1. View / Toolbars / Customize
  2. Na janela do Customize encontra-se no Commands Tab
  3. Seleccione a categoria Macro
  4. Na aérea respeitante aos Commands será exibido um item de Custom Menu Item, seleccione -o e arraste-o com o rato até a uma posição do menu que lhe interesse – por exemplo pode introduzir numa das listas de opções do menu (File, View,…) ou então criar como uma nova opção do Menu..

Fig.7 – Caixa de diálogo para atribuir uma macro a um comando do menu

(versão Draft)


ISCTE / DCTI 19 / 122

DISSOCIAÇÃO

  1. Tools / Customize
  2. Arraste o Menu ou Comando do Menu até ao documento e solte-o

(versão Draft)


ISCTE / DCTI 20 / 122

Editor de Visual Basic for Applications

  1. Tools / Macro / Visual Basic Editor - para aceder ao Editor
  2. Posicionando-se no corpo de uma macro, na janela do lado direito inferior, poderá executar a macro através de: Run / Run Sub-UserForms (figura 9) ou botão Run.

Fig.9 – Execução de uma macro no Editor de Visual Basic for Applications