Jump to content

Foto

Executar macro com resultado de uma função



1 resposta(s) nesse tópico

#1 Cristiano_trab    

Cristiano_trab
  • Participante
  • 1 mensagens

Publicado 15 May 2010 - 11:01 AM

Bom dia Pessoal

Sou novo no forum, e estou aprendendo a trabalhar com macros... Minha dúvida é a seguinte:

Como faço para executar uma macro com o resultado de uma função SE por exemplo.


Tentei algumas coisas e quase deu certo, mas não totalmente o que fiz foi o seguinte:


Public Function FCNX()

Call TesteVbMsgBoxResult

End Function


E depois.....



Public Sub TesteVbMsgBoxResult()

Dim resultado As VbMsgBoxResult
resultado = MsgBox("Tem certeza que deseja prosseguir com esta ação?", vbYesNo, "Tomando uma decisão")
If resultado = vbYes Then
MsgBox "Você acaba de confirmar a ação"
Else
MsgBox "Você acaba de recusar a ação"

End If

If resultado = vbYes Then
Range("a1") = "Funcionou !!!"

End If

Range("A3").Select

End Sub


A minha idéia é de que quando o valor da célula B2 por exemplo for igual a 1 ele aciona a macro, e com isso aparece a primeira MsgBox, informado se a informação está correta ou não, clicando em sim, aparece a segunda MsgBox dizendo o que tenho que fazer.... um exemplo seria "favor informar o dados completos". e clicando em OK, vai me direcionar para a célula onde tenho que digitar os dados.

Espero ter explicado corretamente, fico no aguardo de alguém que possa me ajudar.....

Valeu.

#2 sharkjfsp    

sharkjfsp
  • Participante
  • 912 mensagens

Publicado 15 May 2010 - 11:37 AM

Bom dia e seja bem vindo ao Fórum , Cristiano !
1 - Clique com o Direito do Mouse sobre a Aba Plan1 >> Exibir Código...
2 - Copie o Código Abaixo e Cole-o na Janela em Branco
3 - Retorne para a Plan1 digite em B2 1 e Veja o Resultado em A1
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Sub Teste()
resultado = MsgBox("Tem certeza que deseja prosseguir com esta ação?", vbYesNo, "Tomando uma decisão")
If resultado = vbYes Then
MsgBox "Você acaba de confirmar a ação"
'ou "favor informar o dados completos"
Range("a1") = "Funcionou !!!"
Else
MsgBox "Você acaba de recusar a ação"
End If
Range("A3").Select 'Direcionada para Célula A3
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target.Row = 2 And Range("B2") = 1 Then
Call Teste
End If
End Sub

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Espero Ter Sido Útil .
Aguardo Resposta , Vlw !?


Disponibilizando Arquivo no Fórum - Regras do Fórum - Diga se a Dica Funcionou , POR FAVOR ! - Sites que oferecem apostilas gratuitamente
ccclxvii - A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original.