Ajout d'une condition à une macro

yblotiere

XLDnaute Occasionnel
Bonjour

le code suivant me permet lorsque je clique sur cette celulle de passer de vide à "P" et de colorer la zone en noir mais aussi de supprimer "NP"

je suis obligé de faire cela manuellement

Code:
If Target.Column = 13 And Target.Count = 1 Then
  If Target = "" Then
    Target = "P":  Target.Interior.ColorIndex = 36
    Target(1, 2) = "": Target(1, 2).Interior.ColorIndex = -4142
  ElseIf Target = "P" Then
    Target = "":  Target.Interior.ColorIndex = -4142
    Target(1, 2) = "NP": Target(1, 2).Interior.ColorIndex = 36
  End If
  Cancel = True
End If

Aujourd’hui j'ai rajouté une colonne date de paiement et je souhaiterais que cela soit la date qui déclenche le basculement
c'est à dire lorsque la date et vide ou inférieur à aujourd'hui "NP" et lorsque date de paiement égale ou sup à date du jour "P" et "NP" effacé

quelqu'un as t'il une idée ?


merci de votre coup de main

Yannick
 

Pièces jointes

  • Suivi facture et tva.xlsm
    121.1 KB · Affichages: 46
  • Suivi facture et tva.xlsm
    121.1 KB · Affichages: 48
  • Suivi facture et tva.xlsm
    121.1 KB · Affichages: 49
Dernière édition:

youky(BJ)

XLDnaute Barbatruc
Re : Ajout d'une condition à une macro

Bonjour Yannick,
Je pense qu'une simple formule ferait bien l'affaire
=SI(W7<AUJOURDHUI();"NP";"P")
Il serait bon de ne laisser qu'une seule colonne pour indiquer "P" ou "NP"
Cette formule peut être rentrée au moment du remplissage de la colonne A en worksheet_change.
(Code à faire)
Fichier un peu complex et pas facile de s'y retrouver quand on le découvre.
Bruno
 

yblotiere

XLDnaute Occasionnel
Re : Ajout d'une condition à une macro

Bonjour Bruno

j'ai bien prie ta formule et d’essayé de mettre cela en code worksheet change
voici le code mais il y a une erreur de compilation pour information je ne peut pas avoir qu'une seule colonne car il y a des chose qui se déclenche sur cette colonne notamment les retard de paiement

merci de ton aide

yanncik

Code:
'Traitement des paiement=============================
If Target.Column = 13 And Target.Count = 1 Then
  If Target.Value.Column = 21 <= AUJOURDHUI() Then
    Target = "P":  Target.Interior.ColorIndex = 36
    Target(1, 2) = "": Target(1, 2).Interior.ColorIndex = -4142
  ElseIf Target = "P" Then
    Target = "":  Target.Interior.ColorIndex = -4142
    Target(1, 2) = "NP": Target(1, 2).Interior.ColorIndex = 36
  End If
  Cancel = True
End If
  Cancel = True
  End If
  End Sub
 

Pièces jointes

  • Suivi facture et tva v1.xlsm
    119.5 KB · Affichages: 33

youky(BJ)

XLDnaute Barbatruc
Re : Ajout d'une condition à une macro

Re,
Voici de retour le fichier avec la macro modifiée.
Elle mets des formules en M et N quand on indique la somme de la facture.
Bruno
 

Pièces jointes

  • Suivi facture et tva v2.xlsm
    77.6 KB · Affichages: 36
  • Suivi facture et tva v2.xlsm
    77.6 KB · Affichages: 35
  • Suivi facture et tva v2.xlsm
    77.6 KB · Affichages: 31

yblotiere

XLDnaute Occasionnel
Re : Ajout d'une condition à une macro

Re ,
Merci Bruno
cela fonctionne en parti
mais j'ai modifiée les formules car ce que je voulais
ces si W est vide ou inferieur a aujourd'hui NP
si W est egale ou sup à aujourd'hui alors P

voila ce que cela donne

=SI(W6="";"NP";SI(W6>AUJOURDHUI();"NP";""))
=SI(W6="";"";SI(W6<=AUJOURDHUI();"P";""))
je vais essayé de remettre cela dans le code
mais si tu à la solutions je suis preneur

merci de ton coup de main

yanncik
 

yblotiere

XLDnaute Occasionnel
Re : Ajout d'une condition à une macro

re

voici ce comment j'ai modifier les formules existante mais cela ne fonctionne pas
'Traitement des paiement=============================
If Target.Column = 6 And Target.Count = 1 Then
If Target = "" Then Exit Sub
Cells(Target.Row, 13).Formula = "=IF(W" & Target.Row & "="""","""",IF((W" & Target.Row & "<=TODAY()," & """P""" & ",""""" & "))"
Cells(Target.Row, 14).Formula = "=IF(W" & Target.Row & "="""",""NP"",IF((W" & Target.Row & ">TODAY()," & """NP""" & ",""""" & "))"
End If

'=SI(W6="";"NP";SI(W6>AUJOURDHUI();"NP";""))
'=SI(W6="";"";SI(W6<=AUJOURDHUI();"P";""))
'
End Sub

merci de votre coup de main
 

youky(BJ)

XLDnaute Barbatruc
Re : Ajout d'une condition à une macro

Bonsoir,
Si W est vide ou la date de payement est inférieur à la date du jour ma formule renvoie "NP".... sinon rien
et si la date de payement est superieur à la date du jour "P" ....sinon rien
je ne vois pas pourquoi tu veux modifier les formules.
je viens de re-tester et pour moi c'est bon
Les formules sont misent lors de validation de données en col F (en HT)
il serait bon de mettre la formule pour le calcul de TTC en même temps
Bruno
 

yblotiere

XLDnaute Occasionnel
Re : Ajout d'une condition à une macro

RE

Je me suis peut étre mal explqué au départ
voila ce qu'il faut que cela fasse et pourquoi j'ai modifié t'es formule

si il n'y a pas de date de paiement ou si la date de paiement n'ai pas encore égale à la date du jour alors NP
si il n'y a pas de date de paiement alors rien et si la date de paiement est égale ou supérieure à la date du jour alors P
voila

j'espère avoir était plus clair

merci

yannick
 

youky(BJ)

XLDnaute Barbatruc
Re : Ajout d'une condition à une macro

Re,
J'ai démasqué la ligne 1 ou l'on peux tout gérer.
Ensuite un simple copié collé suffit.
J'ai mis tes formules et je pense que les miennes fonctionnaient mieux.
Bruno
 

Pièces jointes

  • Suivi facture et tva v2.xlsm
    79.6 KB · Affichages: 38
  • Suivi facture et tva v2.xlsm
    79.6 KB · Affichages: 39
  • Suivi facture et tva v2.xlsm
    79.6 KB · Affichages: 41

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 508
Messages
2 089 143
Membres
104 048
dernier inscrit
Noni