Adicionado em: | 12/02/2011 |
Modificado em: | 12/02/2011 |
Tamanho: | Vazio |
Downloads: | 1285 |
Saberexcel - o site das macros
Esta macro do Aplicativo Microsoft Excel VBA(Visual Basic Application), contém uma macro que gera uma pergunta aleatória faz um loop nas respostas e de forma aleatoria a resposta é direcionada para uma autoforma(Shapes). A busca é realizada em outra planilha (Banco de Dados).
O exemplo tem finalidade didática. (observe que a simetria no código facilita muito o entendimento)
Veja bem, no aprendizado VBA você tem por obrigação em aprender, o que são esses vocábulos e seus membros mais importantes.
CÓDIGOS ESTÃO NA PRIMEIRA LINHA DA MACRO
Set c = Sheets("BD").Range("A1").Offset(Int(Rnd() * [Questoes].Count + 1), 0)
'Set' , 'c' , 'Sheets', 'Range', 'OffSet', 'Int', 'Rnd','questoes-range dinamico nomeado','Count',. -
(viu que não é dificil) esses nomes são "Vocábulos do VB"
A | B | |
1 | VOCABULÁRIO | << S I G N I F I C A D O >> |
2 | Instrução Set | Atribui uma referência de objeto a uma variável ou propriedade |
3 | Variável c | Variáveis servem para armazenarmos dados e usarmos quando necessário |
4 | Objeto Range | Representa uma célula, uma linha, uma coluna, uma seleção de células contendo um ou mais blocos contíguos de células ou um intervalo 3D. |
5 | Propriedade Offset | Retorna um objeto Range, que representa um intervalo que é deslocado do intervalo especificado |
6 | Instrução Int | Função que retorna parte de um inteiro |
7 | Funçao Rnd | Função que retorna um Single que contém um número aleatório |
8 | Propriedade Count | Retorna um Long (número inteiro longo) que contém o número de objetos de uma coleção. |
9 | COMO SABER | Teclando F1 no VBE na palavra chave, abrirá o Help do item selecionado. |
Sub Gera_questao_resposta_aleatoria()
Set c = Sheets("BD").Range("A1").Offset(Int(Rnd() * [Questoes].Count + 1), 0)
Saber1.Shapes("sb").Visible = False
Saber1.Shapes("sbm").Visible = False
Saber1.Shapes("sbm1").Visible = False
With Sheets("Questões")
[B5] = c
[C5] = c(1, 3)
[D5] = c(1, 4)
[E5] = c(1, 5)
[F5] = c(1, 6) 'código
'essa instrução With foi criada para retornar os valores no Shapes(Autoforma)'Saber'
With .Shapes("Saber")
.TextFrame.Characters.Text = c(1, 2)
.Visible = False
End With
End With
[F8].Select
End Sub
essa macro foi criada somente para tornar os shapes(autoformas) visíveis.
Sub ver()
Saber1.Shapes("Saber").Visible = True
Saber1.Shapes("sb").Visible = True
Saber1.Shapes("sbm").Visible = True
Saber1.Shapes("sbm1").Visible = True
End Sub
'caso queira programar pela folha de código da folha de planilha, bem simples olhe no projeto vba
'caso o usuário mude o nome da folha de planilha lá na aba das planilha, não ocorrerá o erro de
'localização do objeto Worksheet. Ok...
Sub Gera_questao_resposta_aleatoria_1()
Set c = Saber2.Range("A1").Offset(Int(Rnd() * [Questoes].Count + 1), 0)
With Saber1 'planilha Questões
[B5] = c
[C5] = c(1, 3)
[D5] = c(1, 4)
[E5] = c(1, 5)
[F5] = c(1, 6) 'código
'essa instrução With foi criada para retornar os valores no Shapes(Autoforma)'Saber'
With .Shapes("Saber")
.TextFrame.Characters.Text = c(1, 2)
.Visible = False
End With
End With
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com os produtos didáticos SaberExcel
Adquira já o Acesso Imediato
à Area de Membros
Aprenda Excel VBA com Simplicidade de
códigos e Eficácia, Escrevendo Menos e
Fazendo Mais.
'-------------------------------------'
Entrega Imediata:
+ 500 Video Aulas MS Excel VBA
+ 35.000 Planilhas Excel e VBA
+ Coleção 25.000 Macros MS Excel VBA
+ 141 Planilhas Instruções Loops
+ 341 Planilhas WorksheetFunctions(VBA)
+ 04 Módulos Como Fazer Excel VBA
+ Curso Completo MS Excel VBA
+ Planilhas Inteligentes
<script type="text/javascript"><!--
google_ad_client = "ca-pub-2317234650173689";
/* retangulo 336 x 280 */
google_ad_slot = "0315083363";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel,
Sobre as WorksheetFunctions Funções de Planilhas que retornam valores do VBA