Je ne vois pas où l'erreur est.Suivant sans pour Erreur lors de l'ajout de nouvelles fonctions Si VBA
c'est actuellement mon code:
For Each Rng3 In Range("$A$3:$A$1000")
If Rng3.Value = "Account Credit (Debit G/L)" Then
If Rng3.Offset(0, 8).Value = "IVR Risk" Then
If Rng3.Offset(0, 1).Value = 0 Or Rng3.Offset(0, 1).Value > 0 Then
GLIVR = GLIVR + 1
Else: Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "No" And _
Rng3.Offset(0, 5).Value <> "812-519" Then
If Rng3.Offset(0, 1).Value = 0 Or Rng3.Offset(0, 1).Value > 0 Then
GLManual = GLManual + 1
ElseIf Rng3.Offset(0, 1).Value < 0 Then Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "Yes" And _
Rng3.Offset(0, 5).Value <> "812-519" Then
If Rng3.Offset(0, 1).Value = 0 Or Rng3.Offset(0, 1).Value > 0 Then
EFGLManual = EFGLManual + 1
End If
If Rng3.Value = "Account Credit (Debit G/L)" Then
If Rng3.Offset(0, 8).Value = "IVR Risk" Then
If Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
GLIVR = GLIVR + 1
Else: Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "No" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
GLManual = GLManual + 1
ElseIf Rng3.Offset(0, 1).Value < 0 Then Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "Yes" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
EFGLManual = EFGLManual + 1
End If
End If
End If
Suivant Rng3
Je ne vois pas où est l'erreur.
Ce fut le code original j'ai essayé d'ajouter du code à:
For Each Rng3 In Range("$A$3:$A$1000")
If Rng3.Value = "Account Credit (Debit G/L)" Then
If Rng3.Offset(0, 8).Value = "IVR Risk" Then
If Rng3.Offset(0, 1).Value = 50 Or Rng3.Offset(0, 1).Value > 50 Then
GLIVR = GLIVR + 1
Else: Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "No" And _
Rng3.Offset(0, 5).Value <> "812-519" Then
If Rng3.Offset(0, 1).Value = 50 Or Rng3.Offset(0, 1).Value > 50 Then
GLManual = GLManual + 1
ElseIf Rng3.Offset(0, 1).Value < 25 Then Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "Yes" And _
Rng3.Offset(0, 5).Value <> "812-519" Then
If Rng3.Offset(0, 1).Value = 25 Or Rng3.Offset(0, 1).Value > 25 Then
EFGLManual = EFGLManual + 1
End If
End If
End If
Suivant Rng3
Toute aide serait grandement appréciée.
merci.
@barrowc Merci pour cette explication, cela a beaucoup de sens. Merci à votre recommandation, j'ai résolu l'erreur, mais maintenant il semble y avoir un autre problème avec elle. Ceci est maintenant le code:
'For Each Rng3 In Range("$A$3:$A$1000")
If Rng3.Value = "Account Credit (Debit G/L)" Then
If Rng3.Offset(0, 8).Value = "IVR Risk" Then
If Rng3.Offset(0, 1).Value = 0 Or Rng3.Offset(0, 1).Value > 0 Then
GLIVR = GLIVR + 1
Else: Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "No" And _
Rng3.Offset(0, 5).Value <> "812-519" Then
If Rng3.Offset(0, 1).Value = 0 Or Rng3.Offset(0, 1).Value > 0 Then
GLManual = GLManual + 1
ElseIf Rng3.Offset(0, 1).Value < 0 Then Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "Yes" And _
Rng3.Offset(0, 5).Value <> "812-519" Then
If Rng3.Offset(0, 1).Value = 0 Or Rng3.Offset(0, 1).Value > 0 Then
EFGLManual = EFGLManual + 1
ElseIf Rng3.Offset(0, 8).Value = "IVR Risk" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
GLIVR = GLIVR + 1
Else: Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "No" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
GLManual = GLManual + 1
ElseIf Rng3.Offset(0, 1).Value < 0 Then Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "Yes" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
EFGLManual = EFGLManual + 1
End If
End If
End If
End If
Next Rng3
Le nouveau numéro que j'ai est la deuxième partie du code qui est:
ElseIf Rng3.Offset(0, 8).Value = "IVR Risk" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
GLIVR = GLIVR + 1
Else: Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "No" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
GLManual = GLManual + 1
ElseIf Rng3.Offset(0, 1).Value < 0 Then Rng3.ClearContents
End If
ElseIf Rng3.Offset(0, 8).Value = "Manual Risk" And Rng3.Offset(0, 9).Value = "Yes" And _
Rng3.Offset(0, 5).Value <> "812-135" Then
If Rng3.Offset(0, 1).Value = 250 Or Rng3.Offset(0, 1).Value > 250 Then
EFGLManual = EFGLManual + 1
End If
End If
End If
End If
Suivant Rng3
Cette partie semble ne rien faire à mes résultats. L'idée derrière ce code est que je veux effacer les valeurs en dessous de 250 lorsque la colonne 5 est nommée "812-135". Si la valeur est égale ou supérieure à 250, je veux qu'elle s'affiche comme le font les lignes ci-dessus. Pour "812-519" le code a fonctionné. Fondamentalement je veux avoir les mêmes résultats qui sont montrés sous "812-519" pour être montrés sous "812-135" mais pas pour n'importe quelle valeur, seulement pour des valeurs supérieures ou égales à 250. Actuellement avec ce code montre toutes les valeurs sous "812-135" (par exemple 2,3,5,109,111 etc.)
Le problème est? Qu'essayez-vous d'accomplir? Ligne qui donne l'erreur? Veuillez noter que plus la question est courte et/ou claire, mieux nous pouvons vous aider – Sgdva
Êtes-vous en train de concevoir un vaisseau spatial? Jamais vu autant de niveaux d'imbriqués imbriqués. Je vous conseille de * repenser * votre problème et de réorganiser votre code. –
@sgva J'ai maintenant corrigé le code d'erreur grâce au commentaire de barrowc. Le but est de coller un ensemble de données et d'avoir une macro avec laquelle filtrer les lignes qui sont nécessaires et celles qui ne le sont pas. L'idée derrière la deuxième partie du code mentionné ci-dessus après mon édition est que je veux effacer les valeurs ci-dessous 250 lorsque la colonne 5 est nommée "812-135". Si la valeur est égale ou supérieure à 250, je veux qu'elle s'affiche comme les lignes précédentes sous "812-519". Fondamentalement je veux avoir les mêmes résultats qui sont montrés sous "812-519" pour être montrés sous "812-135" mais seulement pour des valeurs> = 250 –