• Initiateur de la discussion Initiateur de la discussion nat54
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

nat54

XLDnaute Barbatruc
Un autre souci..... 🙁

voilà la situation
j'ai un tableau avec des contrats
certains sont écris (la ligne entière) en bleu, c les contrats prévisionnels
certains sont en noir, ce sont les contrats actifs ou inactifs
--> actif quand date fin >= aujourd'hui
--> inactif = contrat fini

comment faire apparaitre en colonne BU la situation de chaque contrat ?

Code:
Sub SituationContrat()

'les cellules surveillées
For Each c In Range('a3:a300')
'condition fixée pour bleu = prévisionnel
If c.Interior.ColorIndex = 5 Then
Range('bu') = 'prévisionnel'
'condition fixée pour noir = actif ou inactif
If c.Interior.ColorIndex = 52 And if range('al')>=aujourdhui()Then
Range('bu') = 'actif'
Else
Range('bu') = 'inactif'
End If
End Sub


le AND IF, ca existe ou pas ???

Message édité par: nat54, à: 18/08/2005 13:49
 
Bonjour Nat54 et le forum,

Si j'ai bien compris la question , la macro devient :

Sub SituationContrat()
Dim C As Range
'les cellules surveillées
For Each C In Range('A3:A300')
If C <> '' Then
'condition fixée pour bleu = prévisionnel
If C.Interior.ColorIndex = 5 Then
Range('BU' & C.Row) = 'prévisionnel'
'condition fixée pour noir = actif ou inactif
Else
If C.Interior.ColorIndex = 52 And Range('A' & C.Row) >= Date Then
Range('BU' & C.Row) = 'actif'
Else
Range('BU' & C.Row) = 'inactif'
End If
End If
End If
Next C
End Sub

Cordialement

Bernard
 
merci bien 😉

sorry pour les erreurs je débute en VBA...

@ jmps : je débute, je débute....
qu'entends-tu par BU dans son assiette ??? :huh:

je vais tester mais le fichier est utilisé par une collègue donc je ne peux pas enregistrer...

Message édité par: nat54, à: 18/08/2005 14:15
 
Code:
Sub SituationContrat()   
Dim C As Range   
'les cellules surveillées   
For Each C In Range('A3:A300')   
If C <> '' Then   
'condition fixée pour bleu = prévisionnel   
If C.Interior.ColorIndex = 5 Then   
Range('BU' & C.Row) = 'prévisionnel'  
End if 
End if 
End sub


je suis vraiment débutante alors j'ai essayé de décomposer mon pb

là normalement il devraimt m'afficher 'prévisionnel' où ma police est en bleu or ya rien ..

donc ya déjà une erruer là ,non ?

Message édité par: nat54, à: 19/08/2005 10:30
 
une question date ca prend jour/moi/année ?

car dans mon tableau en fait il paarait une ligne 'actif' (contrat finissant en déc 2005 donc c bon il est actif)
mais pourquoi les autres ne fonctionnent pas ?
(la colonne a le même format date partout)
 
merci pour ton aide 😉

Sub SituationContrat()
Dim C As Range
'les cellules surveillées
For Each C In Range('A3:A300')
If C <> '' Then
'condition fixée pour bleu = prévisionnel
If C.Font.ColorIndex = 5 Then
Range('BU' & C.Row) = 'prévisionnel'
'condition fixée pour noir = actif ou inactif
Else
If C.Font.ColorIndex = 1 And Range('AL' & C.Row) >= Date Then
Range('BU' & C.Row) = 'actif'
Else
Range('BU' & C.Row) = 'inactif'
End If
End If
End If
Next C
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Cpier/coller en VBA
Réponses
7
Affichages
652
Réponses
6
Affichages
1 K
Réponses
1
Affichages
840
Retour