Você está na página 1de 73

Excel Macros e Programao em VBA

UserForms
UserForms so formulrios personalizados pelo programador para criar uma interface entre a pasta de trabalho do Excel e o usurio da aplicao. Abra o Editor do VBA; No menu Inserir, escolha UserForm; A figura mostra como fica o Editor com um UserForm inserido.

13 de setembro de 2007

UTFPR Damat

Apostila - 376 Pg. 1

Excel Macros e Programao em VBA


UserForms

13 de setembro de 2007

UTFPR Damat

Apostila - 376 Pg. 2

Excel Macros e Programao em VBA


UserForms
Quando selecionamos o formulrio, a caixa de ferramentas fica ativa. Esta, possui todos os objetos necessrios para compor o nosso formulrio;

13 de setembro de 2007

UTFPR Damat

Apostila - 381 Pg. 3

Excel Macros e Programao em VBA


UserForms
Agora vamos adicionar um boto de comando ao formulrio UserForm1 e vamos configurar o evento Ao Clicar neste boto para exibir a famosa mensagem Hello World!!!
Clique com o boto esquerdo do mouse sobre a opo Boto de Comando e arraste para o formulrio, e solte o boto do mouse.
13 de setembro de 2007
UTFPR Damat

Apostila - 381 Pg. 4

Excel Macros e Programao em VBA


UserForms
D um duplo clique sobre o boto inserido. Voc ter a pgina de cdigos. Digite a caixa de mensagem indicada a seguir entre os comandos Sub e End Sub:
Private Sub CommandButton1_Click() MsgBox Hello World!!!" End Sub

Pressione o boto Executar Sub/UserForm. Voc ter o UserForm no modo execuo conforme mostra a Figura:
13 de setembro de 2007
UTFPR Damat

Apostila - 385 Pg. 5

Excel Macros e Programao em VBA


UserForms

13 de setembro de 2007

UTFPR Damat

Apostila - 385 Pg. 6

Excel Macros e Programao em VBA


UserForms
Pressione o boto CommandButton1 Voc ter a caixa de dilogo mostrada na Figura.

13 de setembro de 2007

UTFPR Damat

Apostila - 386 Pg. 7

Excel Macros e Programao em VBA


UserForms
A Janela Propriedades UserForm1, mostra todas as propriedades do UserForm. Os outros controles que iremos explorar tambm tero suas propriedades listadas nesta janela. Altere a propriedade Caption para EXIBIR MENSAGEM!!!
13 de setembro de 2007
UTFPR Damat

Apostila - 395 Pg. 8

Excel Macros e Programao em VBA


UserForms
Caixa de Combinao: Um controle do tipo Caixa de combinao (conhecido como ComboBox) utilizado para exibir uma lista de opes. Estes controles so indicados para campos onde existe um conjunto de valores possveis e limitado. Nestas situaes, muito mais prtico para o usurio selecionar um valor em uma pequena lista, do que ter que digitar o valor. Alm disso, o fato do usurio selecionar o valor em uma lista, praticamente elimina a possibilidade de erros de digitao.
13 de setembro de 2007
UTFPR Damat

Apostila - 409 Pg. 9

Excel Macros e Programao em VBA


Vamos criar um controle do tipo Caixa de Combinao, no qual sero listadas as sees da empresa: Administrao Auditoria Contabilidade Finanas Informtica Marketing Pesquisa e Desenvolvimento Vendas Alm do controle do tipo Caixa de combinao, tambm adicionaremos um controle do tipo rtulo, para identificar o controle Caixa de combinao.
13 de setembro de 2007
UTFPR Damat

UserForms

Apostila - 409 Pg. 10

Excel Macros e Programao em VBA


UserForms
1. Crie um novo formulrio; 2. Adicione um controle do tipo rtulo; 3. Altere a propriedade Name do controle para Lista e a propriedade Caption para Selecione uma Seo; 4. Dimensione o controle de tal maneira que todo o texto da propriedade Caption possa ser exibido; 5. Altere a fonte do rtulo para negrito, a cor da fonte para vermelho e a cor de fundo do rtulo para amarelo; 6. Seu formulrio dever estar conforme indicado na Figura a seguir:

13 de setembro de 2007

UTFPR Damat

Apostila - 410 Pg. 11

Excel Macros e Programao em VBA


UserForms

13 de setembro de 2007

UTFPR Damat

Apostila - 410 Pg. 12

Excel Macros e Programao em VBA


3. Agora vamos adicionar e configurar um controle do tipo Caixa de Combinao. Na Caixa de ferramentas, clique no boto ( ). Clique no formulrio, direita do rtulo. Ser criado um controle do tipo Caixa de combinao, no tamanho padro. Voc pode redimensionar o controle para o tamanho desejado. Seu formulrio deve estar semelhante ao indicado na Figura a seguir:

UserForms

13 de setembro de 2007

UTFPR Damat

Apostila - 410 Pg. 13

Excel Macros e Programao em VBA


4. Agora vamos definir os itens que sero exibidos no controle do tipo Caixa de combinao. 5. Clique no controle Caixa de combinao para selecion-lo. Se a janela de propriedades no estiver sendo exibida, pressione a tecla F4 para exibir a janela de propriedades. 6. Altere a propriedade Name para ListaDeSees. 7. A lista de valores de um controle do tipo Caixa de Combinao informado atravs da propriedade RowSource. Nesta propriedade voc deve informar uma faixa de clulas na planilha, onde esto os valores que devem ser exibidos na Caixa de Combinao. Por exemplo, voc pode informar o seguinte valor para a propriedade RowSource:
13 de setembro de 2007
UTFPR Damat

UserForms

Apostila - 411

Pg. 14

Excel Macros e Programao em VBA


UserForms
Sees!H1:H8 Neste exemplo, estou informando que sero utilizados os valores da faixa H1 at H8, da planilha Sees, da pasta de trabalho atual. Ou seja, a nossa caixa de combinao ter oito linhas, sendo que o valor da primeira linha obtido a partir da clula H1 da planilha Sees, o valor da segunda linha obtido a partir da clula H2 da planilha Sees e assim por diante. Crie a planilha Sees e digite os dados que voc deseja exibir no controle Caixa de Combinao.
13 de setembro de 2007
UTFPR Damat

Apostila - 411

Pg. 15

Excel Macros e Programao em VBA


UserForms
Digite na planilha Sees, iniciando na clula H1, as sees: Administrao Auditoria Contabilidade Finanas Informtica Marketing Pesquisa e Desenvolvimento Vendas
13 de setembro de 2007
UTFPR Damat

Apostila - 411

Pg. 16

Excel Macros e Programao em VBA


UserForms
6. Agora j estamos em condies de testar o nosso controle. Clique em qualquer espao do formulrio para selecion-lo e pressione a tecla F5 para execut-lo. 7. O formulrio ser carregado. Abra a lista do controle Caixa de combinao. Observe que so exibidos os valores das clulas H1 at H8, da planilha Sees, conforme pode ser conferido na figura a seguir:
13 de setembro de 2007
UTFPR Damat

Apostila - 411

Pg. 17

Excel Macros e Programao em VBA


UserForms

13 de setembro de 2007

UTFPR Damat

Apostila - 411

Pg. 18

Excel Macros e Programao em VBA


UserForms
Propriedades do controle Caixa de Combinao. Importante: Muitas das propriedades que sero descritas, se aplicam tambm para outros tipos de controles.

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 19

Excel Macros e Programao em VBA


UserForms
Propriedade AutoSize: Esta propriedade determina se o controle automaticamente redimensionado para exibir todo o seu contedo. Esta propriedade pode ser configurada na janela de propriedades, definindo o seu valor em True ou False Sintaxe usando cdigo VBA objeto.AutoSize = True/False

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 20

Excel Macros e Programao em VBA


UserForms
Propriedade AutoTab: Esta propriedade determina se ir ocorrer a tabulao automtica quando um usurio digita o nmero mximo de caracteres permitido em um TextBox ou na parte da caixa de texto de um ComboBox. Sintaxe usando cdigo VBA objeto.AutoTab = True/False

13 de setembro de 2007

UTFPR Damat

Apostila - 413 Pg. 21

Excel Macros e Programao em VBA


UserForms
Propriedade BackColor : Esta propriedade utilizada para definir a cor de segundo plano do controle. Voc ver a cor de fundo de um objeto, somente se a propriedade BackStyle estiver definida como fmBackStyleOpaque. Sintaxe usando cdigo VBA objeto.BackColor [= Longo]

13 de setembro de 2007

UTFPR Damat

Apostila - 414 Pg. 22

Excel Macros e Programao em VBA


UserForms
Propriedade BackStyle: Esta propriedade utilizada para retornar ou definir o estilo de segundo plano do controle.

Sintaxe usando cdigo VBA objeto.BackStyle = fmBackStyle

13 de setembro de 2007

UTFPR Damat

Apostila - 415 Pg. 23

Excel Macros e Programao em VBA


UserForms
Propriedade BorderColor : Esta propriedade utilizada para especificar a cor da borda de um controle. Para se conseguir inserir uma borda, a propriedade BorderStyle deve estar definida como FmBorderStyleSingle. Sintaxe usando cdigo VBA: objeto.BorderColor [= Longo]

13 de setembro de 2007

UTFPR Damat

Apostila - 415 Pg. 24

Excel Macros e Programao em VBA


UserForms
Propriedade BorderStyle: Esta propriedade especifica o tipo de borda utilizado por um controle ou um formulrio.

Sintaxe usando cdigo VBA

objeto.BorderStyle [= fmBorderStyle]

13 de setembro de 2007

UTFPR Damat

Apostila - 416 Pg. 25

Excel Macros e Programao em VBA


UserForms
Propriedade BoundColumn: Esta propriedade identifica a fonte dos dados em um controle do tipo Caixa de combinao (ComboBox) ou Caixa de Listagem (ListBox) de vrias colunas. Se o controle tiver duas ou mais colunas, a propriedade BoundColumn indica o valor de qual coluna ser associado ao controle, depois que uma das opes da lista tiver sido selecionada. Este valor poder ser resgatado com a propriedade Value. Sintaxe usando cdigo VBA objeto.BoundColumn [= Variante]
13 de setembro de 2007
UTFPR Damat

Apostila - 412 Pg. 26

Excel Macros e Programao em VBA


UserForms
Propriedade Value: Esta propriedade especifica o estado ou contedo de um dado controle.

Sintaxe usando cdigo VBA objeto.Value [= Variante]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 27

Excel Macros e Programao em VBA


UserForms
Propriedade ColumnCount : Esta propriedade utilizada para especificar o nmero de colunas a exibir em uma caixa de listagem ou caixa de combinao. Sintaxe usando cdigo VBA

objeto.ColumnCount [= Longo]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 28

Excel Macros e Programao em VBA


UserForms
Propriedade TextColumn: Esta propriedade identifica a coluna em um controle Caixa de Combinao (ComboBox) ou Caixa de Listagem (ListBox), para armazenar na propriedade Text quando o usurio selecionar uma linha. Sintaxe usando cdigo VBA objeto.TextColumn [= Variante]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 29

Excel Macros e Programao em VBA


UserForms
Propriedade Text : Esta propriedade utilizada para retornar ou para definir o texto em um controle do tipo Caixa de Texto (TextBox).

Sintaxe usando cdigo VBA objeto.Text [= Seqncia]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 30

Excel Macros e Programao em VBA


UserForms
Propriedade ColumnWidths: Esta propriedade utilizada para especificar a largura de cada coluna de uma caixa de combinao ou caixa de listagem de vrias colunas. Por exemplo, voc pode definir a largura para trs colunas como: 0;3;0. Neste caso, somente a segunda coluna ser exibida. Sintaxe usando cdigo VBA: objeto.ColumnWidths [= Seqncia]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 31

Excel Macros e Programao em VBA


UserForms
Propriedade ColumnHeads: Este controle utilizado para exibir uma nica linha de cabealhos de coluna para caixas de listagem, caixas de combinao e objetos que aceitam cabealhos de coluna. Sintaxe usando cdigo VBA

objeto.ColumnHeads [= Booleano]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 32

Excel Macros e Programao em VBA


UserForms
Propriedade ControlTipText : Esta propriedade define o texto que aparece quando o usurio mantm, durante um momento, o ponteiro do mouse sobre um controle sem clicar. Sintaxe usando cdigo VBA

objeto.ControlTipText [= Seqncia]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 33

Excel Macros e Programao em VBA


UserForms
Propriedade DropButtonStyle: Esta propriedade especifica o smbolo exibido no boto suspenso de um controle do tipo Caixa de combinao (ComboBox.),sendo que o smbolo padro uma flechinha para baixo. Sintaxe usando cdigo VBA

objeto.DropButtonStyle [= fmDropButtonStyle]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 34

Excel Macros e Programao em VBA


UserForms
Propriedade Enabled: Esta propriedade especifica se um controle pode receber o foco e responder aos eventos gerados pelo usurio.

Sintaxe usando cdigo VBA

objeto.Enabled [= Booleano]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 35

Excel Macros e Programao em VBA


UserForms
Propriedade Locked: Esta propriedade utilizada para especificar se um controle pode ter o seu contedo editado. Quando um controle est bloqueado e ativado, ele ainda pode iniciar eventos e ainda pode receber o foco, apenas no poder ter o seu contedo alterado. Sintaxe usando cdigo VBA: objeto.Locked [= Booleano]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 36

Excel Macros e Programao em VBA


UserForms
Propriedade Font: Esta propriedade retorna um objeto do tipo Fonte, o qual define as caractersticas do texto utilizado por um controle ou formulrio. Utilize as propriedades de fonte para especificar o nome da fonte, definir texto sublinhado ou em negrito ou para ajustar o tamanho do texto.

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 37

Excel Macros e Programao em VBA


UserForms
Propriedade ForeColor: Esta propriedade especifica a cor de primeiro plano de um objeto. Em uma caixa de texto ou de combinao, esta propriedade altera a cor do texto. Sintaxe usando cdigo VBA objeto.ForeColor [= Longo]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 38

Excel Macros e Programao em VBA


UserForms
Propriedades Height e Width: Estas propriedades definem a altura (Height) e a largura (Width), em pontos, de um objeto.

Sintaxe usando cdigo VBA objeto.Height [= nico] objeto.Width [= nico]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 39

Excel Macros e Programao em VBA


UserForms
Propriedades Left e Top: Estas duas propriedades definem a distncia entre um controle e a borda esquerda ou superior do formulrio onde est o controle. Sintaxe usando cdigo VBA objeto.Left [= nico] objeto.Top [= nico]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 40

Excel Macros e Programao em VBA


UserForms
Propriedade ListRows: Esta propriedade utilizada para especificar o nmero mximo de linhas a exibir na lista de um controle do tipo Caixa de Combinao ou Caixa de Listagem. Sintaxe usando cdigo VBA objeto.ListRows [= Longo]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 41

Excel Macros e Programao em VBA


UserForms
Propriedade ListStyle: Esta propriedade utilizada para especificar o aspecto visual da lista em um ListBox ou ComboBox.

Sintaxe usando cdigo VBA objeto.ListStyle [= fmListStyle]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 42

Excel Macros e Programao em VBA


UserForms
Propriedade ListWidth: Esta propriedade utilizada para especificar a largura da lista em um controle do tipo Caixa de Combinao (ComboBox). Se o valor for 0, a lista ter o mesmo tamanho do controle. Sintaxe usando cdigo VBA objeto.ListWidth [= Variante]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 43

Excel Macros e Programao em VBA


UserForms
Propriedade MatchEntry: Esta propriedade utilizada para retornar ou para definir um valor indicando como um controle do tipo Caixa de Listagem (ListBox) ou Caixa de Combinao (ComboBox) pesquisa sua lista medida que o usurio digita. Sintaxe usando cdigo VBA objeto.MatchEntry [= fmMatchEntry]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 44

Excel Macros e Programao em VBA


UserForms
Propriedade MatchRequired: Especifica se um valor digitado na parte texto de um ComboBox deve corresponder a uma entrada na parte lista existente do controle. O usurio pode digitar valores no correspondentes, mas no pode deixar o controle enquanto no for digitado um valor correspondente. Sintaxe usando cdigo VBA objeto.MatchRequired [= Booleano]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 45

Excel Macros e Programao em VBA


UserForms
Propriedade MaxLength: Especifica o nmero mximo de caracteres que um usurio pode digitar em um TextBox ou ComboBox.

Sintaxe usando cdigo VBA objeto.MaxLength [= Longo]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 46

Excel Macros e Programao em VBA


UserForms
Propriedade MousePointer: Esta propriedade utilizada para especificar o tipo de ponteiro exibido quando o usurio posiciona o mouse sobre um determinado objeto. Sintaxe usando cdigo VBA objeto.MousePointer [= fmMousePointer]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 47

Excel Macros e Programao em VBA


UserForms
Propriedade Row Source: Esta propriedade utilizada para especificar a origem que fornece uma lista para um controle do tipo Caixa de Combinao (ComboBox) ou Caixa de Listagem (ListBox.). J utilizamos esta propriedade em um exemplo deste mdulo, no qual criamos uma Caixa de Combinao que exibia uma lista de sees. Sintaxe usando cdigo VBA objeto.RowSource [= Seqncia]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 48

Excel Macros e Programao em VBA


UserForms
Propriedade SpecialEffect: Esta propriedade utilizada para especificar o aspecto visual de um objeto. Sintaxe usando cdigo VBA Para Caixa de seleo, Boto de opo, Boto de ativao, use a sintaxe a seguir: objeto.SpecialEffect [= fmButtonEffect] Para outros controles, use a sintaxe a seguir: objeto.SpecialEffect [= fmSpecialEffect]
13 de setembro de 2007
UTFPR Damat

Apostila - 412 Pg. 49

Excel Macros e Programao em VBA


UserForms
Propriedade TabIndex: Esta propriedade utilizada para especificar a posio de um nico controle na ordem de tabulao do formulrio.

Sintaxe usando cdigo VBA objeto.TabIndex [= Inteiro]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 50

Excel Macros e Programao em VBA


UserForms
Propr iedade TabStop: Esta propriedade define se um controle pode receber o foco quando o usurio tabula at ele.

Sintaxe usando cdigo VBA objeto.TabStop [= Booleano]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 51

Excel Macros e Programao em VBA


UserForms
Propriedade TextAlign: Esta propriedade especifica como o texto alinhado em um controle.

Sintaxe usando cdigo VBA objeto.TextAlign [= fmTextAlign]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 52

Excel Macros e Programao em VBA


UserForms
Propriedade Visible: Esta propriedade especifica se um objeto est visvel ou oculto.

Sintaxe usando cdigo VBA objeto.Visible [= Booleano]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 53

Excel Macros e Programao em VBA


UserForms
Propriedade WordWrap: Esta propriedade indica se o contedo de um controle quebra automaticamente a linha no final.

Sintaxe usando cdigo VBA objeto.WordWrap [= Booleano]

13 de setembro de 2007

UTFPR Damat

Apostila - 412 Pg. 54

Excel Macros e Programao em VBA


UserForms Exemplo1
Exemplo 1: Construir um Caa Nquel usando quatro figuras e sorteando trs em cada jogada, premiando quando as trs figuras forem iguais. Abra a pasta UserForms.xls; Abra o editor do VBA; No menu Inserir escolha UserForm. Sua tela deve estar como mostra a Figura;

13 de setembro de 2007

UTFPR Damat

Pg. 55

Excel Macros e Programao em VBA


UserForms Exemplo1

13 de setembro de 2007

UTFPR Damat

Pg. 56

Excel Macros e Programao em VBA


UserForms Exemplo1
Aumente o tamanho do UserForm para inserir os controles; Inclua trs controles de imagem na parte superior do Form para serem utilizados como o visor do Caa Nquel; Inclua mais quatro controles de imagem na parte inferior do Form para serem utilizados como mostra da figuras disponveis no sorteio; Insira um rtulo; Por ltimo, insira dois botes de comando. Tente deixar seu Form como mostra a Figura;
13 de setembro de 2007
UTFPR Damat

Pg. 57

Excel Macros e Programao em VBA


UserForms Exemplo1
Agora configure as propriedades dos elementos de exibio, de acordo com a tabela:
Objeto UserForm1 CommandButton1 CommandButton2 Propriedade Name Caption Name Caption Name Caption Configurao CaaNquel Caa Nquel Jogada Jogada Sair Sair

Para Label1, deixe em branco a propriedade Caption.


13 de setembro de 2007
UTFPR Damat

Pg. 58

Excel Macros e Programao em VBA


UserForms Exemplo1
Para inserir as figuras nos 4 controles de imagem, siga os passos: 1. Selecione o primeiro controle de imagem, conforme mostra a figura;

13 de setembro de 2007

UTFPR Damat

Pg. 59

Excel Macros e Programao em VBA


UserForms Exemplo1
2. Na janela de Propriedades, mude Name para Figura1. Em seguida, localize a propriedade Picture. Clique em reticncias. Voc ter a caixa de dilogo Carregar figura como mostra a Figura a seguir;

13 de setembro de 2007

UTFPR Damat

Pg. 60

Excel Macros e Programao em VBA


UserForms Exemplo1
3. Na opo Arquivos do tipo, escolha Todos os Arquivos(*.*). Voc ter quatro figuras disponveis. Clique na Figura1 e pressione o boto Abrir;

13 de setembro de 2007

UTFPR Damat

Pg. 61

Excel Macros e Programao em VBA


UserForms Exemplo1
4. Voc ver no UserForm a primeira figura inserida no controle de imagem (Figura); 5. Execute os mesmos passos para inserir as outras trs figuras.

13 de setembro de 2007

UTFPR Damat

Pg. 62

Excel Macros e Programao em VBA


UserForms Exemplo1
Para iniciar a codificao, d um duplo clique no Form para abrir a janela de cdigo. Inclua a declarao da varivel Saldo na seo Geral.

Dim Saldo As Currency

13 de setembro de 2007

UTFPR Damat

Pg. 63

Excel Macros e Programao em VBA


UserForms Exemplo1
Volte ao Form e selecione-o. D agora um duplo clique no Form. Escolha o evento Activate, como mostra a Figura; Voc ter o procedimento, como mostra a figura, inserido;

13 de setembro de 2007

UTFPR Damat

Pg. 64

Excel Macros e Programao em VBA


UserForms Exemplo1
Digite as seguintes linhas de cdigo para o procedimento Activate do UserForm;
Private Sub UserForm_Activate() Randomize Saldo = InputBox("Quanto voc deseja apostar (em R$)?") End Sub

A instruo Randomize avisa ao VBA para alternar os nmeros produzidos pelo gerador de nmeros aleatrios. Sem essa instruo, haveria uma repetio dos nmeros gerados toda vez que o programa fosse executado;
13 de setembro de 2007
UTFPR Damat

Pg. 65

Excel Macros e Programao em VBA


UserForms Exemplo1
Em seguida, vamos escrever o cdigo para o boto Sair. Volte ao Form e d um duplo clique sobre o boto Sair para acessar seu cdigo;
Private Sub Sair_Click() If Saldo > 0 Then MsgBox "Voc tem " & Saldo & " para receber!!!" Else MsgBox "Hoje voc no est com sorte. Tente outro dia!!!" End If End End Sub
13 de setembro de 2007
UTFPR Damat

Pg. 66

Excel Macros e Programao em VBA


UserForms Exemplo1
O prximo passo escrever a rotina do boto Jogada. D um duplo clique sobre o boto para acessar seu cdigo. Voc ter o esqueleto do procedimento.

13 de setembro de 2007

UTFPR Damat

Pg. 67

Excel Macros e Programao em VBA


UserForms Exemplo1
Digite as linhas de cdigo:

Dim P1, P2, P3 As Integer 'Gerar nmeros aleatrios P1 = Int(4 * Rnd + 1) P2 = Int(4 * Rnd + 1) P3 = Int(4 * Rnd + 1)

13 de setembro de 2007

UTFPR Damat

Pg. 68

Excel Macros e Programao em VBA


UserForms Exemplo1
'Mostrar a figura no visor 1 If P1 = 1 Then Image1.Picture = Figura1.Picture ElseIf P1 = 2 Then Image1.Picture = Figura2.Picture ElseIf P1 = 3 Then Image1.Picture = Figura3.Picture ElseIf P1 = 4 Then Image1.Picture = Figura4.Picture End If
13 de setembro de 2007
UTFPR Damat

Pg. 69

Excel Macros e Programao em VBA


UserForms Exemplo1
'Mostrar a figura no visor 2 If P2 = 1 Then Image2.Picture = Figura1.Picture ElseIf P2 = 2 Then Image2.Picture = Figura2.Picture ElseIf P2 = 3 Then Image2.Picture = Figura3.Picture ElseIf P2 = 4 Then Image2.Picture = Figura4.Picture End If
13 de setembro de 2007
UTFPR Damat

Pg. 70

Excel Macros e Programao em VBA


UserForms Exemplo1
'Mostrar a figura no visor 3 If P3 = 1 Then Image3.Picture = Figura1.Picture ElseIf P3 = 2 Then Image3.Picture = Figura2.Picture ElseIf P3 = 3 Then Image3.Picture = Figura3.Picture ElseIf P3 = 4 Then Image3.Picture = Figura4.Picture End If
13 de setembro de 2007
UTFPR Damat

Pg. 71

Excel Macros e Programao em VBA


UserForms 'Atualizao do saldo Exemplo1 Saldo = Saldo - 1 'Verificar se o jogador ganhou If P1 = P2 And P2 = P3 Then If P1 = 1 Then Saldo = Saldo + 25 MsgBox "Voc tirou a sorte grande!!!" Else Saldo = Saldo + 10 MsgBox "Voc venceu!!!" End If End If
13 de setembro de 2007
UTFPR Damat

Pg. 72

Excel Macros e Programao em VBA


UserForms Exemplo1
'Calcular e exibir o total acumulado Label1.Caption = Format(Saldo, "R$0.00") If Saldo <= 0 Then MsgBox "Voc est sem crdito!"
a = InputBox("Quer mais crdito? Em caso afirmativo, digite Sim.")

If a = "Sim" Or a = "sim" Then Saldo = InputBox("Quanto voc deseja comprar?") Label1.Caption = Format(Saldo, "R$0.00") End If End If
13 de setembro de 2007
UTFPR Damat

Pg. 73

Você também pode gostar