Commentaires

Bonjour,

Voilà j'ai mon code, il sert à afficher les noms des personnes d'une date défini à la date du jour -1 mois. Cela fonctionne.

Sur la fin de mon code je fais une vérification, le soucis c'est que j'arrive à vérifier si il y a un commentaire dans une cellule, je voudrais que ça vérifie toutes la colonne.

Sub commentaire()

recl = ""
Date_Precise = #6/1/2013#
Date_Max = DateSerial(Year(Date), Month(Date) + 0, -1)
For i = 6 To 1200
If Sheets("Feuil2").Range("G" & i).Value >= Date_Precise And _
Sheets("Feuil2").Range("G" & i).Value < Date_Max Then
recl = recl & vbNewLine & Range("A" & i) & Space(1) & Range("B" & i) & Space(3) & Range("C" & i) & Space(3) & Range("D" & i) & Space(3) & Range("E" & i)
End If
Next i
If recl <> "" And Not ThisWorkbook.ReadOnly And (Cells(10, 7).comment Is Nothing) Then
MsgBox ("Suivi du stagiaire en chaine 6 des mois précédents, Serrage au couple :" & vbNewLine & recl)
Else
End If

End Sub

Cdlt.

13essai.xlsm (40.56 Ko)

Re,

Personne n'a une petite idée de ce que je pourrais faire ?

Cdlt.

Bonjour

Remplace :

If recl <> "" And Not ThisWorkbook.ReadOnly And (Cells(10, 7).comment Is Nothing) Then
MsgBox ("Suivi du stagiaire en chaine 6 des mois précédents, Serrage au couple :" & vbNewLine & recl)
Else

Par une boucle :

For i = 6 To Cells(Rows.Count, "G").End(xlUp).Row
    If Cells(i, "G").Comment Is Nothing Then
        MsgBox ("Suivi du stagiaire en chaine 6 des mois précédents, Serrage au couple :" & vbNewLine & recl)
     End If
Next i

Bonjour gmb,

Avec ton code il boucle sur le nom ou il y a le commentaire.

Cdlt.

Bonjour

Tu écris :

Avec ton code il boucle sur le nom ou il y a le commentaire.

Rien de plus simple pour arrêter la boucle, après "MsgBox ("Suivi du stagiaire ....." ajoute

End

Bye !

Re,

j'ai mis :

MsgBox ("Suivi du stagiaire en chaine 6 des mois précédents, Serrage au couple :" End & vbNewLine & recl)

ça me dit :

Attendu : séparateur de liste ou )

Cdlt.


Re,

j'ai trouvé pour le End. Merci Gmb.

Le soucis maintenant c'est qu'il fait l'inverse de ce que je demande :

Il affiche si il y a un commentaire mais je veux l'inverse.

Cdlt.

7essai.xlsm (42.08 Ko)

Tu écris :

Il affiche si il y a un commentaire mais je veux l'inverse.

Alors, inverse la condition :

 If not Cells(i, "G").Comment Is Nothing Then

Bye !

Bonjour,

Je l'ai fais et ça ne fonctionne pas, quand on inverse la condition, il affiche dans les 2 cas.

Cdlt.

Re bonjour

Sur ton code, j'ai neutrasisé ton message et la ligne "End".

Et tu obtiens un message pour chaque ligne où il n'y a pas de commentaire en colonne G.

Cela te va-t-il ?

17essai-v1.xlsm (43.73 Ko)

Bonjour gmb,

Oui c'est exactement ça que je veux mais en l'intégrant à mon code.

Cdlt.

re,

j'ai trouvé ça :

Sub commentaire()

recl = ""
Date_Precise = #6/1/2013#
Date_Max = DateSerial(Year(Date), Month(Date) + 0, -1)
For i = 6 To 1200
If Sheets("Feuil2").Range("G" & i).Value >= Date_Precise And _
Sheets("Feuil2").Range("G" & i).Value < Date_Max And Cells(i, "G").Comment Is Nothing Then
recl = recl & vbNewLine & Range("A" & i) & Space(1) & Range("B" & i) & Space(3) & Range("C" & i) & Space(3) & Range("D" & i) & Space(3) & Range("E" & i)
End If
Next i

If recl <> "" And Not ThisWorkbook.ReadOnly And (Cells(10, 7).Comment Is Nothing) Then
MsgBox ("Suivi du stagiaire en chaine 6 des mois précédents, Serrage au couple :" & vbNewLine & recl)
Else
End If

End Sub

Maintenant le soucis c'est que si je rajoute un nom avec la date dépassé et que je ne mets pas le commentaire, il ne me l'affiche pas. (Voir fichier)

Cdlt.


Re,

Merci à toi Gmb pour ton aide j'ai trouvé mon erreur.

Voici le bon code pour ceux que ça intéresse :

Option Explicit
Dim recl, Date_Precise, Date_Max
Dim i, j

Sub commentaire()

recl = ""
Date_Precise = #6/1/2013#
Date_Max = DateSerial(Year(Date), Month(Date) + 0, -1)
For i = 6 To Range("a65536").End(xlUp).Row
If Sheets("Feuil2").Range("G" & i).Value >= Date_Precise And _
Sheets("Feuil2").Range("G" & i).Value < Date_Max And Cells(i, "G").Comment Is Nothing Then
recl = recl & vbNewLine & Range("A" & i) & Space(1) & Range("B" & i) & Space(3) & Range("C" & i) & Space(3) & Range("D" & i) & Space(3) & Range("E" & i)
End If
Next i

If recl <> "" And Not ThisWorkbook.ReadOnly Then
MsgBox ("Suivi du stagiaire en chaine 6 des mois précédents, Serrage au couple :" & vbNewLine & recl)
Else
End If

End Sub

Cdlt.

Et encore merci Gmb.

14essai-v1.xlsm (39.71 Ko)
Rechercher des sujets similaires à "commentaires"