Bonjour à tous le titre n'est pas très parlent mais pas facile à décrire en quelque mots
voici mon problème j'ai 2 onglets dans chacun un tableau avec des données
dans l'onglet 2 dans la colonne H j'insère des commentaire selon des infos du 1er onglet tout marche très bien
sauf quand je masque des colonnes (de J à AG) il m'insère les commentaires uniquement ceux qui contienne une ou plusieurs lettre (ici en jaune)
Voici les commentaires dans la colonne H colonne non masquée (tous les com. sont dans la colonne H jaune et orange)
Est ici une fois les colonnes masquée il ne reste plus que les commentaires de ceux qui contienne une ou plusieurs lettre
et qui sont colorer dans mon exemple (jaune)
le code
merci d'avance pour vos réponses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 Option Explicit Private Sub CommentAjout() Sheets("Tableau2").Range("H6:H80").ClearComments Dim c As Range Dim i As Byte Dim Immat As String, Nsimat As String Dim Commentaire As String For i = 19 To 129 Sheets("Tableau1").Activate If Sheets("Tableau1").Range("M" & i).Value = "X" And Sheets("Tableau1").Range("B" & i).Value = 1 Then Immat = Sheets("Tableau1").Range("I" & i).Value Commentaire = Sheets("Tableau1").Range("N" & i).Value Nsimat = Sheets("Tableau1").Range("J" & i).Value For Each c In Sheets("Tableau2").Range("J6:J80, N6:N80, R6:R80, V6:V80, Z6:Z80, AD6:AD80") If c.text = Immat Then With Sheets("Tableau2").Range("H" & c.Row) If .Comment Is Nothing Then ' Le commentaire n'existe pas, on le crée .AddComment If Nsimat <> Immat Then .Comment.text text:=Immat & " N° SIMAT : " & Nsimat & Chr(10) & Commentaire Else .Comment.text text:=Immat & ": " & Chr(10) & Commentaire End If .Comment.Shape.TextFrame.AutoSize = True Exit For Else 'Un commentaire existe déjà, on ajoute alors le nouveau à la fin de celui existant If Nsimat <> Immat Then .Comment.text text:=.Comment.text & Chr(10) & Immat & " N° SIMAT : " & Nsimat & Chr(10) & Commentaire Else .Comment.text text:=.Comment.text & Chr(10) & Immat & ": " & Chr(10) & Commentaire End If .Comment.Shape.TextFrame.AutoSize = True Exit For End If End With End If Next c End If Next i End Sub
Partager