anthooooony
XLDnaute Occasionnel
Bonjour,
On me demande d'analyse les échéances de ma société, sur les factures sont payées en avance, en retard, par rapport au contrats.
J'ai récupéré toutes les échéances par fournisseurs, j'ai une formule pour chaque
J'ai essayé de faire des si imbriqué, mais il m'a dit au bout de la 14ème condition qu'il avait trop de formule !!! grrr
Alors j'essaye de le faire sur vba en faite c'est seule solution trouvée
Les trois échéances si dessous sont les plus complexes que j'ai apres elle se décline 30frsfin de moi le 10 15 20 etc
30 jours de mois = fin.mois(c1+30;0)
30 jours fin de mois le 5 = fin.mois(c1+30;0)+5
90 jours fin de mois fin.mois(c1+90;0)
J'ai trouvé une formule sur Internet sur vba DateSerial(Year(DateFact), Month(DateFact) + 3, 1) - 1
mais je n'arrive pas à l’expliquer, je suis allé dans l'aide vba sur "dateserial" ca n'a pas été plus claire..
J'ai un code que nous avions commencé en cours de macro en fin de cour ce n'était pas le sujet du jour du coup on a arreté, mais j'ai le squelette
Merci encore
Anthooooony
On me demande d'analyse les échéances de ma société, sur les factures sont payées en avance, en retard, par rapport au contrats.
J'ai récupéré toutes les échéances par fournisseurs, j'ai une formule pour chaque
J'ai essayé de faire des si imbriqué, mais il m'a dit au bout de la 14ème condition qu'il avait trop de formule !!! grrr
Alors j'essaye de le faire sur vba en faite c'est seule solution trouvée
Les trois échéances si dessous sont les plus complexes que j'ai apres elle se décline 30frsfin de moi le 10 15 20 etc
30 jours de mois = fin.mois(c1+30;0)
30 jours fin de mois le 5 = fin.mois(c1+30;0)+5
90 jours fin de mois fin.mois(c1+90;0)
J'ai trouvé une formule sur Internet sur vba DateSerial(Year(DateFact), Month(DateFact) + 3, 1) - 1
mais je n'arrive pas à l’expliquer, je suis allé dans l'aide vba sur "dateserial" ca n'a pas été plus claire..
J'ai un code que nous avions commencé en cours de macro en fin de cour ce n'était pas le sujet du jour du coup on a arreté, mais j'ai le squelette
Code:
Function echeance(DateFact As Date, TypeReglement As String) As Date
Select Case TypeReglement
Case "F000"
echeance = DateSerial(Year(DateFact), Month(DateFact) + 3, 1) - 1
Case "F001"
echeance = DateFact + 30
Case "F010"
echeance = DateFact + 30
Case "F015"
echeance = DateFact + 30
Case "F020"
echeance = DateFact + 30
Case "F030"
echeance = DateFact + 30
Case "F035"
echeance = DateFact + 30
Case "F042"
echeance = DateFact + 30
Case "F045"
echeance = DateFact + 30
Case "F060"
echeance = DateFact + 30
Case "F090"
echeance = DateFact + 30
Case "F100"
echeance = DateFact + 30
Case "F105"
echeance = DateFact + 30
Case "F110"
echeance = DateFact + 30
Case "F115"
echeance = DateFact + 30
Case "F120"
echeance = DateFact + 30
Case "F125"
echeance = DateFact + 30
Case "F155"
echeance = DateFact + 30
Case "F160"
echeance = DateFact + 30
Case "F165"
echeance = DateFact + 30
Case "F200"
echeance = DateFact + 30
Case "F210"
echeance = DateFact + 30
Case "F220"
echeance = DateFact + 30
Case "F260"
echeance = DateFact + 30
Case "F300"
echeance = DateFact + 30
Case "F310"
echeance = DateFact + 30
Case "F505"
echeance = DateFact + 30
Case "F510"
echeance = DateFact + 30
Case "F515"
echeance = DateFact + 30
Case "F705"
echeance = DateFact + 30
Case "F710"
echeance = DateFact + 30
Case "F720"
echeance = DateFact + 30
Case "F730"
echeance = DateFact + 30
Case "F900"
echeance = DateFact + 30
Case "F901"
echeance = DateFact + 30
Case "F998"
echeance = DateFact + 30
Case "F999"
echeance = DateFact + 30
End Select
End Function
Merci encore
Anthooooony