Erreur 424... objet requis

Résolu/Fermé
guillaume - 13 juin 2017 à 16:48
 Guillaume - 16 juin 2017 à 10:36
Bonjour,
selon la grandeur de la valeur en cellule D, je souhaite multiplier celle-ci par un coef différent et à renvoyer le résultat en colonne G.
Je débute tant bien que mal dans le monde épanouissant de VBA et rencontre des difficultés à desceller mes erreurs... Merci d'avance pour votre aide !
Je vous met ci-dessous ma macro.
cdt
Guillaume

Private Sub CommandButton1_Click()
Dim L As Integer
Dim c As Integer

L = target.Row
c = target.Column
If Not Range("D" & L) Is Empty Then

If Range("D" & L).Value <= 5 Then Range("G" & L) = Range("D" & L).Value * 8
If Range("D" & L).Value > 5 And Range("D" & L).Value <= 10 Then Range("G" & L) = Range("D" & L).Value * 7
If Range("D" & L).Value > 10 And Range("D" & L).Value <= 20 Then Range("G" & L) = Range("D" & L).Value * 5
If Range("D" & L).Value > 20 And Range("D" & L).Value <= 30 Then Range("G" & L) = Range("D" & L).Value * 4.5
If Range("D" & L).Value > 30 And Range("D" & L).Value <= 50 Then Range("G" & L) = Range("D" & L).Value * 4
If Range("D" & L).Value > 50 And Range("D" & L).Value <= 70 Then Range("G" & L) = Range("D" & L).Value * 3.5
If Range("D" & L).Value > 70 And Range("D" & L).Value <= 100 Then Range("G" & L) = Range("D" & L).Value * 3
If Range("D" & L).Value > 100 And Range("D" & L).Value <= 250 Then Range("G" & L) = Range("D" & L).Value * 2.5
If Range("D" & L).Value > 250 Then Range("G" & L) = Range("D" & L).Value * 1.5

End If

End Sub

6 réponses

Kalissi Messages postés 218 Date d'inscription jeudi 2 mai 2013 Statut Membre Dernière intervention 15 juillet 2019 20
Modifié le 13 juin 2017 à 17:28
Bonjour,

À première vue ...

Private Sub CommandButton1_Click()

    Dim L As Integer, C As Integer
    Dim Target As Range
    
    ' Target doit être initialisé quelque part
    Set Target = ActiveCell

    L = Target.Row
    C = Target.Column
    
    If Not Range("D" & L) Is Empty Then

        If Range("D" & L).Value <= 5 Then Range("G" & L).Value = Range("D" & L).Value * 8
        If Range("D" & L).Value > 5 And Range("D" & L).Value <= 10 Then Range("G" & L).Value = Range("D" & L).Value * 7
        If Range("D" & L).Value > 10 And Range("D" & L).Value <= 20 Then Range("G" & L).Value = Range("D" & L).Value * 5
        If Range("D" & L).Value > 20 And Range("D" & L).Value <= 30 Then Range("G" & L).Value = Range("D" & L).Value * 4.5
        If Range("D" & L).Value > 30 And Range("D" & L).Value <= 50 Then Range("G" & L).Value = Range("D" & L).Value * 4
        If Range("D" & L).Value > 50 And Range("D" & L).Value <= 70 Then Range("G" & L).Value = Range("D" & L).Value * 3.5
        If Range("D" & L).Value > 70 And Range("D" & L).Value <= 100 Then Range("G" & L).Value = Range("D" & L).Value * 3
        If Range("D" & L).Value > 100 And Range("D" & L).Value <= 250 Then Range("G" & L).Value = Range("D" & L).Value * 2.5
        If Range("D" & L).Value > 250 Then Range("G" & L).Value = Range("D" & L).Value * 1.5

    End If

End Sub


K
0