Commentaire BD petite modif...

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 !

Christian0258

XLDnaute Accro
Bonjour à tout le forum,

Je souhaiterais, à nouveau, votre aide afin d'éffectuer une petite modif sur une macro (de Mr J. Boisgontier).

voir fichier...

Merci pour votre aide si précieuse et pour le temps que vous voudrez bien
m'accorder.

Bien amicalement,
Christian
 

Pièces jointes

Re : Commentaire BD petite modif...

Bonjour Christian,

Dans la ligne de code :

For Each c In [a2:a100]

[a2:a100] determine le champs d'application de ta macro il te suffit donc de la modifier

pour reprendre ton exemple For Each c In [a2:c20]
 
Re : Commentaire BD petite modif...

Bonjour Christian, Nyko.

Même solution que Niko pour la zone.

Je te propose en plus d'effacer les commentaires dans les cellules où le texte est différent des données de la base ou des cellules vides.

Code ci-dessous :
VB:
Sub maj()
For Each c In [a2:C20]
p = Application.Match(c, Application.Index([base], , 1), 0)
If Not IsError(p) Then
temp = Sheets("bd").Range("base").Cells(p, 2)
If c.comment Is Nothing Then c.AddComment
c.comment.Text Text:=temp
c.comment.Shape.TextFrame.AutoSize = True
Else
c.ClearComments
End If
Next c
End Sub

A+
 
Re : Commentaire BD petite modif...

Bonjour,

Code:
Sub maj()
  For Each c In [a2:a100]
    p = Application.Match(c, Application.Index([base], , 1), 0)
    If Not IsError(p) Then
      temp = Sheets("bd").Range("base").Cells(p, 1) & " " & Sheets("bd").Range("base").Cells(p, 2) _
        & " " & Sheets("bd").Range("base").Cells(p, 3)
      If c.comment Is Nothing Then c.AddComment
      c.comment.Text Text:=temp
      c.comment.Shape.TextFrame.AutoSize = True
    End If
  Next c
End Sub

http://boisgontierjacques.free.fr/fichiers/Commentaires/RecherchevComment.xls
http://boisgontierjacques.free.fr/fichiers/Images/RecherchevShape.xls

JB
 

Pièces jointes

Re : Commentaire BD petite modif...

Bonjour,

je remonte ce post car j'ai bien réussit à appliquer le script à mes besoins mais j'ai de gros soucis de lenteur.... En effet, mon fichier aura en fin de mois environ 7000_8000 lignes et déjà à 2300, il faut attendre un "bon" p'tit moment pour avoir la mise à jour....

Il y aurait il moyen d'adapter ce script pour qu'il soit plus réactif en ne traitant que les nouvelles entrées par exemple ou tout autre solution ?

Je vous joint mon fichier...

D'avance merci
Akhlan
 

Pièces jointes

Re : Commentaire BD petite modif...

Bonsoir,

voir pj

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Range("E2:E10000"), Target) Is Nothing Then
   For Each col In Array(1, 2, 4, 5)
    If Not Target.Offset(, col).Comment Is Nothing Then Target.Offset(, col).Comment.Delete
    p = Application.Match(Target.Offset(, col), Application.Index([Dispo], , 1), 0)
    If Not IsError(p) Then
      temp = Sheets("Files").Range("Dispo").Cells(p, 2)
      Target.Offset(, col).AddComment
      Target.Offset(, col).Comment.Text Text:=temp
      Target.Offset(, col).Comment.Shape.TextFrame.AutoSize = True
    End If
   Next col
  End If
End Sub

jb
 

Pièces jointes

Dernière édition:
Re : Commentaire BD petite modif...

Alors là, je dis respect..... D'abord trop rapide pour la réponse, ça marche super bien et en plus ça me remet les commentaires à zéro si j'efface mon entrée....

Merci beaucoup ;-)

J'ai une autre petite question, hier soir quand je suis partit du travail, j'ai remis les partages sur le fichier et j'ai un message d'erreur qui m'a indiqué que les macros ne fonctionnerait pas sur un fichier partagé, il y a moyen de contourner cela ou tout ce que je veux mettre en place sera "bancale" ?

Akhlan
 
Re : Commentaire BD petite modif...

On vient de découvrir un soucis avec les scripts...

Nous collons directement le début des lignes en une seules fois (colonnes A à E avec C masquée) au format texte et nous avons systématiquement une erreur 13 pointant vers :

"temp = Sheets("Files").Range("Dispo").Cells(p, 2)

Un collage uniquement des colonnes A à D ou de la cellule E concerné n’entraîne pas d'erreur, comment corriger cela ?

D'avance merci
Akhlan
 
Re : Commentaire BD petite modif...

Je reviens, avec la même question...

mon fichier étant un poil trop gros, voici un lien Free
Free - Envoyez vos documents

nous recevons nos infos au format html et nous faisons un copier / coller (Valeurs) et c'est là que j'ai des erreurs...

Sur l'onglet "Explication", je vous ai mis deux exemples et pour voir l'erreur, il suffit de copier une des lignes jusqu'à la cellule F et de la coller sur l'onglet "Incidents mensuels" sur la première ligne libre...

Et quand on colle, quand on sélection la ligne entière ou une colonne quelconque, j'ai mon erreur 13 et je ne sais pas la résoudre :-(

Ce n'est pas bloquant, nous avons pris l'habitude de cliquer sur OK mais ce n'est pas propre et si quelqu'un sait résoudre ce soucis, je prends ^^

Merci
Akhlan
 
- 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

Réponses
2
Affichages
240
Réponses
8
Affichages
434
Réponses
4
Affichages
618
Retour