ASSOCIAR MACRO A CELULA EXCEL

MARCOS 21/03/2011 14:07:42
#368679
Bom dia!
Pessoal, programo em VB (6.0), mas nunca fiz nada em VBA.Mas surgiu uma necessidade e peço aos colegas de VBA ajuda simples.
Preciso criar uma Macro no Excel, que permita :

Exibir na célula [ô]F10[ô] o seguinte:

- O resultado da soma de (C10 + D10) * E10

- Mas, se o valor de E10 for maior que 10, multiplicar por 2
- Mas, se o valor de E10 for maior que 20, multiplicar por 4
- Mas, se o valor de E10 for maior que 30, multiplicar por 6

Agradeço qualquer ajuda
MARCELO.TREZE 21/03/2011 14:40:54
#368682
use uma formula da celulua colega

algo assim

=SE(E(E10>10;E10<21);(C10+D10)*2;SE(E(E10>20;E10<31);(C10+D10)*4;(C10+D10)*6))

JONATHANSTECKER 21/03/2011 14:54:39
#368687
Resposta escolhida

Acredito que seja isso que você precisa!

Private Sub Calcular()
Dim C10 As Double
C10 = Range([Ô]C10[Ô]).Value
Dim D10 As Double
D10 = Range([Ô]D10[Ô]).Value
Dim E10 As Double
E10 = Range([Ô]E10[Ô]).Value
Dim F10 As Double
F10 = 0

Select Case E10
Case Is > 30
Range([Ô]F10[Ô]).Value = ((C10 + D10) * E10) * 6
Case Is > 20
Range([Ô]F10[Ô]).Value = ((C10 + D10) * E10) * 4
Case Is > 10
Range([Ô]F10[Ô]).Value = ((C10 + D10) * E10) * 2
Case Else
Range([Ô]F10[Ô]).Value = (C10 + D10) * E10
End Select
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range([Ô]C10[Ô])) Is Nothing Or _
Not Intersect(Target, Range([Ô]D10[Ô])) Is Nothing Or _
Not Intersect(Target, Range([Ô]E10[Ô])) Is Nothing Then
Call Calcular
End If
End Sub


Obs.: Obviamente isso poderia ser efetudo com uma fórmula na própria célula. Porém, pelo que entendi você quer via Macro mesmo.
JONATHANSTECKER 21/03/2011 14:59:07
#368689
Citação:

:
use uma formula da celulua colega

algo assim

=SE(E(E10>10;E10<21);(C10+D10)*2;SE(E(E10>20;E10<31);(C10+D10)*4;(C10+D10)*6))



Marcos, eu também faria dessa forma! Muito mais simples!
Porém só postei o código via Macro pois pelo que pude entender é o que você deseja.
MARCOS 21/03/2011 15:50:30
#368697
Pessoal, muito obrigado!!!!

O código, baseado na orientação dos colegas esta quase pronto.Peço no entanto
uma orientação [Ô]prática[Ô].

Uma vez criado a Macro. Como eu faria (Se for possivel), para que um botão adicional fosse criado
na barra de ferramentas,de modo que quando este botão for pressionado o código seja executado???
JONATHANSTECKER 21/03/2011 15:58:23
#368698
Citação:

:
Pessoal, muito obrigado!!!!

O código, baseado na orientação dos colegas esta quase pronto.Peço no entanto
uma orientação [Ô]prática[Ô].

Uma vez criado a Macro. Como eu faria (Se for possivel), para que um botão adicional fosse criado
na barra de ferramentas,de modo que quando este botão for pressionado o código seja executado???



Teria que ser um botão na Barra de Ferramentas mesmo?
Ou poderia ser um botão criado na planilha?
JONATHANSTECKER 21/03/2011 16:05:40
#368699
Primeiro crie a sua barra de ferramentas personalizada.
Criar uma barra de ferramentas personalizada

Depois é só atribuir a macro neste botão.
Tópico encerrado , respostas não são mais permitidas