Os exercícios que se seguem devem ser realizados utilizando o editor do Visual Basic integrado no Excel. Para tal, inicie o Excel e adicione a barra de ferramentas do Visual Basic (menu <Ver> seguido das opções <Barras de ferramentas> e <Visual Basic>). Para aceder ao editor do Visual Basic prima o respectivo botão da nova barra.
fact 0 = 1
fact n = n * fact (n-1) para n >= 1
fib 0 = 0
fib 1 = 1
fib n = fib (n-1) + fib (n-2) para n >= 2
Private Sub
CommandButtonFunBas_Click()
FormFunBas.Show
End Sub
No final desta operação ao premir o botão deverá ser apresentado o formulário.
Option Explicit
Private Sub
UserForm_Initialize()
ComboBox1.AddItem
"Soma"
ComboBox1.AddItem
"Média"
ComboBox1.AddItem
"Máximo"
ComboBox1.AddItem
"Mínimo"
TextBox1 = ""
TextBox2 = ""
End Sub
Private Sub
CommandButton1_Click()
Range(TextBox2) =
TextBox1
Unload Me
End Sub
Private Sub ComboBox1_Change()
Select Case
ComboBox1.ListIndex
Case
0
TextBox1
= CelSoma(Selection)
Case
1
TextBox1
= CelMed(Selection)
Case
2
TextBox1
= CelMax(Selection)
Case
3
TextBox1
= CelMin(Selection)
End Select
End Sub
Function CelMax(rng As Range) As
Integer
Dim celula As
Range
CelMax = rng.Cells(1,
1)
For Each celula In
rng
If
celula > CelMax Then CelMax = celula
Next
End Function
Option Explicit
Dim memoria As Double
Dim sinal As String * 1
Dim inicio As Boolean
O código acima declara três variáveis para representar o conteúdo em memória (memoria), o último sinal que foi premido (sinal), e se já foi ou não inserido algum número (inicio).
Private Sub UserForm_Initialize()
memoria = 0
sinal = ""
inicio = True
Visor = 0
End Sub
Private Sub BotãoClear_Click()
memoria = 0
sinal = ""
inicio = True
Visor = 0
End Sub
Private Sub BotãoOK_Click()
ActiveCell = Visor
Unload Me
End Sub
Private Sub BotãoCancelar_Click()
Unload
End Sub
Execute o formulário da calculadora, prima os botões em causa, verifique o sucedido e tente compreender o código respectivo.
Private Sub Botão0_Click()
Numero_Click 0
End Sub
Private Sub Botão1_Click()
Numero_Click 1
End Sub
Para que a acção de premir um botão
numérico funcione, é ainda necessário definir o
procedimento Numero_Click acima referido.
Este procedimento deve actualizar o visor da máquina de
calcular à medida que os algarismos vão sendo
premidos.
Private Sub Numero_Click(num As Integer)
...
End Sub
Private Sub BotãoSomar_Click()
Sinal_Click "+"
End Sub
Por fim, defina o procedimento Sinal_Click. Este procedimento
deve guardar o sinal premido e efectuar as operações
pendentes (pense no que acontece numa vulgar máquina de
calcular!).
Private Sub Sinal_Click(s As String)
...
End Sub
Última Actualização: 15 de Novembro de 1999