Carnage029
XLDnaute Occasionnel
Bonjour à tous,
J'ai crée 4 fonctions persos, mais quand je les appelle dans une cellule de mon tableur, il me met un magnifique #VALEUR alors que quand je fais afficher les étapes de calcul ou que je séléectionne la cellule puis reclic à coté il me donne le bon résultat...
Est-ce un problème courant ?
Ce problème est assez embêtant car j'ai énormément de macro qui viennent chercher la valeur de ces cases...
merci de votre aide :
au cas ou je met mes 4 fonctions persos :
J'ai crée 4 fonctions persos, mais quand je les appelle dans une cellule de mon tableur, il me met un magnifique #VALEUR alors que quand je fais afficher les étapes de calcul ou que je séléectionne la cellule puis reclic à coté il me donne le bon résultat...
Est-ce un problème courant ?
Ce problème est assez embêtant car j'ai énormément de macro qui viennent chercher la valeur de ces cases...
merci de votre aide :
au cas ou je met mes 4 fonctions persos :
Code:
Function montant_a_rembourser_soldes_completes() As Single
Dim I As Integer
montant_a_rembourser_soldes_completes = 0
For I = 25 To 2000
' Factures, payés entièrement '
If Application.WorksheetFunction.CountIf(Range("B25:B10000"), Range("B" & I)) = 1 Then
If Sheets("Balance").Range("H" & I).Value >= 0 Then
If Sheets("Balance").Range("J" & I).Value = Sheets("Balance").Range("C14").Value Then
montant_a_rembourser_soldes_completes = montant_a_rembourser_soldes_completes + Sheets("Balance").Range("H" & I).Value
End If
End If
End If
Next I
End Function
Function montant_a_rembourser_soldes_completes_avec_avoirs() As Single
Dim I As Integer
montant_a_rembourser_soldes_completes_avec_avoirs = 0
For I = 25 To 2000
' Factures, payés entièrement '
If Application.WorksheetFunction.CountIf(Range("B25:B10000"), Range("B" & I)) = 1 Then
If Sheets("Balance").Range("J" & I).Value = Sheets("Balance").Range("C14").Value Then
montant_a_rembourser_soldes_completes_avec_avoirs = montant_a_rembourser_soldes_completes_avec_avoirs + Sheets("Balance").Range("H" & I).Value
End If
End If
Next I
End Function
Function montant_a_rembourser_soldes_incompletes() As Single
Dim I, J As Integer
montant_a_rembourser_soldes_incompletes = 0
J = 0
For I = 25 To 2000
' Factures, payés partiellement '
If Application.WorksheetFunction.CountIf(Range("B25:B10000"), Range("B" & I)) = 2 Then
If Sheets("Balance").Range("H" & I).Value >= 0 Then
If Sheets("Balance").Range("J" & I).Value = Sheets("Balance").Range("C14").Value Then
If Sheets("Balance").Range("H" & I).Value <> Application.WorksheetFunction.VLookup(Sheets("Balance").Range("B" & I).Value, Sheets("Balance").Range("B" & I + 1 & ":H1000"), 7, False) Then
montant_a_rembourser_soldes_incompletes = montant_a_rembourser_soldes_incompletes + Sheets("Balance").Range("H" & I).Value
montant_a_rembourser_soldes_incompletes = montant_a_rembourser_soldes_incompletes - Application.WorksheetFunction.VLookup(Sheets("Balance").Range("B" & I).Value, Sheets("Balance").Range("B" & I + 1 & ":H1000"), 7, False)
End If
End If
End If
End If
Next I
End Function
Function montant_a_rembourser_soldes_incompletes_avec_avoirs() As Single
Dim I, J As Integer
montant_a_rembourser_soldes_incompletes_avec_avoirs = 0
J = 0
For I = 25 To 2000
' Factures, payés partiellement '
If Application.WorksheetFunction.CountIf(Range("B25:B10000"), Range("B" & I)) = 2 Then
If Sheets("Balance").Range("J" & I).Value = Sheets("Balance").Range("C14").Value Then
If Sheets("Balance").Range("H" & I).Value <> Application.WorksheetFunction.VLookup(Sheets("Balance").Range("B" & I).Value, Sheets("Balance").Range("B" & I + 1 & ":H1000"), 7, False) Then
montant_a_rembourser_soldes_incompletes_avec_avoirs = montant_a_rembourser_soldes_incompletes_avec_avoirs + Sheets("Balance").Range("H" & I).Value
montant_a_rembourser_soldes_incompletes_avec_avoirs = montant_a_rembourser_soldes_incompletes_avec_avoirs - Application.WorksheetFunction.VLookup(Sheets("Balance").Range("B" & I).Value, Sheets("Balance").Range("B" & I + 1 & ":H1000"), 7, False)
End If
End If
End If
Next I
End Function