Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Macrocomandos (Macros)
O que uma macro? So programas que executam tarefas especficas, automatizando-as.
Quando uma macro activada, executa uma sequncia de instrues. Tipos de macros: Macros de comandos Macros de funes
Macros de comandos
Repetio de tarefas
frequentemente necessrio executar a mesma tarefa, que podem ser clulas de um intervalo, folhas de clculo de um livro ou diferentes livros de uma aplicao. Embora no seja possvel ao gravador de macros gravar ciclos, consegue gravar a tarefa principal de modo a ser possvel a sua repetio.
Macros de comandos
Tarefas simples
No exemplo que segue criada uma macro que muda a cor das clulas com valores negativos. Passo 1: Criar a macro
Ferramentas / Macro / Gravar nova macro/ Nome
Macros de comandos
Visualizar o conjunto de instrues que constituem a macro (cdigo VBA): Ferramentas / Macros/ Macro/ Editar
Sub Pintar() ' Macro gravada em 04/6/2000 With Selection.Interior .ColorIndex = 6 .Pattern = xlSolid End With End Sub
Macros de comandos
Automatize as seguintes tarefas:
1.
Inserir o seu nome, turma, alinhados esquerda,e o nmero da pgina, alinhado direita, no rodap da folha de clculo. Atribua-lhe uma tecla de atalho. 2. Gravar ficheiro actual na disquete. Atribua-lhe um boto com uma imagem elucidativa. 3. Configurar a pgina para impresso com os seguintes parmetros: Margem Ed=Margem Dt =2cm ; Cabealho =Rodap=3 cm Tamanho do papel = A4, Orientao=Horizontal; Folha sem grelha; Atribua-lhe um boto com a descrio: Configurao de pgina.
Macros de Funes
Existem clculos bastante especficos que no podem ser executados por nenhuma das funes predefinidas. Quando ocorre esta situao necessrio que o utilizador crie a sua prpria funo. Para definir uma funo necessrio:
Macros de Funes
Macros de Funes
1. 2.
Calcular a classificao final disciplina de INF II, em que a frmula aplicada a seguinte:
a. Classificao= 80% * PAC + 20% * TRAB
3. 4.
Repetir a operao mas para uma situao em que so desconhecidas as percentagens atribudas s PAC e ao TRAB (Classificao= X% * PAC + Y%* TRAB) Calcular o valor comercial de um artigo com IVA Calcular o valor comercial de um artigo com desconto
Resumo
Activar o gravador de macros Desactivar o gravador de macros Operaes sobre macros:
O editor do VBA
Propriedades da janela
O editor do VBA
Explorador do projecto (Project Explorer )
Nesta janela possvel visualizar a hierarquia dos projectos de VBA activos. Neste caso est visvel um projecto que Corresponde ao livro com que nos Encontramos a trabalhar: VBAProject (Exerccios) Na pasta Modules est visvel um Ficheiro (mdulo) onde so programadas As macros.
O editor do VBA
Explorador do projecto (Properties )
Nesta janela possvel visualizar e alterar um conjunto de propriedades que definem cada objecto que constitui o projecto, neste caso, a folha3.
Mtodos
So aces que os objectos podem executar.Cada objecto pode ter associados vrios mtodos. As aces desencadeadas pelos mtodos podem alterar as propriedades dos objectos. P.ex.: Fechar um livro de Excel
Objectos: Coleces
As coleces so conjuntos de objectos relacionados. Cada objecto dentro de uma coleco um elemento dessa coleco. Uma coleco tambm um objecto, com as suas propriedades e mtodos. Por exemplo uma coleco que agrupa todas as folhas de clculo de um determinado livro um objecto que existe em Excel, denominado Worksheets. Possui vrias propriedades p.ex.: Count, que devolve o nmero de elementos dessa coleco (Jos Antnio Carrio).
Objectos
Application o objecto que representa o prprio Excel
Algumas das propriedades e mtodos mais importantes
Application
EX. 1
EX. 2
EX. 3
Encerra o Excel.
EX. 4
10
Objectos
Workbooks representa um ficheiro de Excel
Alguns dos mtodos mais importantes
WorkBooks
EX. 1
Sub Nome_livro() Workbooks("livro1").Activate End Sub Sub fecha() Workbooks("Livro1").Close End Sub Sub grava() Workbooks("Livro1").SaveAs ("Exemplos de VBA") End Sub
Activa o livro1
EX. 2
Encerra o livro1
EX. 3
11
Objectos
Worksheets uma folha do objecto Workbooks
Worksheets
EX. 1
Sub Numero_da_folha() N = Worksheets(Facturas").Index MsgBox (N) End Sub Sub Altera_nome() Worksheets(2).Name = Tabelas End Sub
A varivel N devolve o nmero de ordem da folha Facturas em relao s Restantes folhas do livro. O nome da segunda folha do livro alterado para Tabelas.
EX. 2
EX. 3
12
Worksheets
Worksheets
EX. 1
EX. 2
EX. 3
13
Objectos
Range o objecto utilizado para representar uma ou mais clulas de uma Worksheet
Algumas das propriedades mais importantes
Range
EX. 1
EX. 2
Sub Conta_Folhas() N = Worksheets.Count MsgBox (N) End Sub Sub Nome_range() Worksheets(tabelas").Range("Unidades").Value = 10 End Sub
A varivel N devolve o total de folhas que constituem o livro activo Todos os valores Pertencentes rea denominada Unidades passam O valor 10
EX. 3
14
Range
EX. 5 T = Worksheets("segundo").Range("A5").Text
A varivel T devolve o valor que se encontra na clula A5 no formato texto. O titulo lista de valores colocado na linha 1 da coluna A, o deslocamento foi igual a 1 linha, relativamente ao range A2.
Objectos
A propriedade ActiveCell devolve um objecto Range que representa a clula que est activa e dessa forma podem aplicar-se clula activa as propriedades do objecto Range. Ex.: Atribuir o valor 23 clula activa da folha 1 Worksheets(1).Activate ActiveCell.Value = 23 Activa a folha 1
15
Range
' Atalho por teclado: Ctrl+p ' Do While ActiveCell.Value <> " If ActiveCell.Value < 0 Then Selection.Font.ColorIndex = 3 End If ActiveCell.Offset(1, 0).Select Loop End Sub
Este procedimento vai percorrer um conjunto de clulas que se encontram na mesma coluna e se o respectivo contedo for negativo, apresenta o valor com a cor vermelha. A instruo
ActiveCell.Offset(1, 0).Select
Provoca o deslocamento de uma linha e zero colunas relativamente clula em que se encontra posicionado o cursor.
Objectos
Range - Alguns dos mtodos mais importantes
16
Range
EX. 1
EX. 2
EX. 3
Range
EX. 4
EX. 5
Sub Elimina_linha() Selection.EntireRow.Delete End Sub Sub Inicializa_celula() Cells(1, 4).Value = 555 End Sub
EX. 6
17
18
Controlos Personalizados
Criar Controlos
Seleccionar o controlo e desenh-lo no local pretendido.
Formatao de controlos
Cada controlo tem as suas propriedades e para fazer a sua alterao necessrio seguir os passos seguintes: Passo1: Seleccionar o controlo Passo2: Formatar/Controlo/Formatar controlo Passo3: Indicar/Alterar as propriedades pretendidas na caixa de dilogo que surge no ecr.
Exemplo in Microsoft Office 2000 sem Fronteiras, Srgio Sousa e Maria Jos Sousa
19
Exemplo in Microsoft Office 2000 sem Fronteiras, Srgio Sousa e Maria Jos Sousa
20
3. Terminar
Sub Terminar() Application.Quit End Sub
4. Ttulo da aplicao
Sub Titulo() Application.Caption = " Gesto de despesas" End Sub
21
Bibliografia
Microsoft Office 2000 sem fronteiras,Srgio Sousa, Maria Jos Sousa Manual de VBA, Lusa Domingues (ISCTE) Microsoft Excel 2000 VBA Fundamentals, Reed Jacobson O Guia Prtico do Excel 2002, Ana Paula Afonso
22