copie commentaire dans une autre feuille

pascal21

XLDnaute Barbatruc
bonjour
j'ai un tableau dont j'aimerais apporter une petite touche finale
dans la feuille 1 je note des interventions en face de la machine et de la date correspondante ( je ne mets que les initiales pour un gain évident de place à l'écran)
toujours par soucis de place j'applique un commentaire déja formaté à cette cellule
qui reprend la date automatiquement
j'indique les intervenants et le détail de l'opération
jusque là dans le tableau d'origine tout fonctionne au poil (merci à ceux qui m'avaient aidé à l'époque
maintenant je souhaiterais avoir une sauvegarde de toutes ces informations dans une autre feuille (plus tard j'adapterai pour y inserer dans un autre classeur)
je vous joint un petit exemple reprenant une partie de mon tableau et un aperçu de ce que je souhaiterais avoir en sauvegardes
merci de votre aide
 

Pièces jointes

  • essai copie commentaire.xls
    22.5 KB · Affichages: 50
G

Guest

Guest
Re : copie commentaire dans une autre feuille

Bonjour,

Voici deux macros,
Une pour laquelle il faut absolument que la ligne Détails des commentaires soient la quatrième et une autre qui ne l'exige pas mais ira peut-être un peu moins vite.

Code:
Sub SauverCommentaires()
    Dim t(1 To 4)
    Dim c As Range, cDest As Range
    For Each c In Sheets("Feuil1").Range("B2:EN2000").Cells
        If Not c.Comment Is Nothing Then
            t(1) = c.Parent.Cells(c.Row, 1) ' la date
            t(2) = c.Parent.Cells(1, c.Column) ' la machine
            t(3) = c
            'il faut absolument que la ligne de détails soit la 4ème ligne du commentaire
            t(4) = Split(c.Comment.Text, vbLf)(3)
            Sheets("sauvegardes").Range("A" & Application.Rows.Count).End(xlUp)(2).Resize(, 4).Value = t
            Erase t
        End If
    Next
End Sub
Sub SauverCommentairesMoinsRapideMaisUnPeuPlusSur()
    Dim t(1 To 4), tComm As Variant
    Dim i As Long
    Dim c As Range, cDest As Range
    For Each c In Sheets("Feuil1").Range("B2:EN2000").Cells
        If Not c.Comment Is Nothing Then
            t(1) = c.Parent.Cells(c.Row, 1) ' la date
            t(2) = c.Parent.Cells(1, c.Column) ' la machine
            t(3) = c
            t(4) = "détails non trouvé" 'valeur par défaut
            tComm = Split(c.Comment.Text, vbLf)
            If IsArray(tComm) Then
            For i = UBound(tComm) To UBound(tComm)
                If LCase(tComm(i)) Like "détails:*" Then
                    t(4) = tComm(i)
                    Exit For
                End If
            Next
            End If
            Sheets("sauvegardes").Range("A" & Application.Rows.Count).End(xlUp)(2).Resize(, 4).Value = t
            If IsArray(tComm) Then Erase tComm
        End If
    Next
End Sub

A+
 

pascal21

XLDnaute Barbatruc
Re : copie commentaire dans une autre feuille

Code:
t(4) = Split(c.Comment.Text, vbLf)(3)
bonsoir poipoi hasco
j'ai une erreur de type l'indice n'appartient pas à la sélection
split?????
et sur le 2eme code çà me recopie que la 1ere cellule trouvée celle du 26/1/11
et en colonne 2 je n'ai pas info de la machine concernée
sinon c'est dans l'esprit de ce que je cherche
poipoi
l'exemple que tu as trouvé sur le site de boisgontier vient d'une demande quasi similaire qui ne fonctionne pas ou plus en tout cas je ne comprends pas qu'il l'est gardé sur son site


rectification
si je mets le code sur l'activate de la feuille sauvgardes çà fonctionne
tout à l'heure je l'avais mis sur selectionchange
par contre çà ne copie que le 1ere cellule trouvée

çà ne prens pas les cellules qui n'auraient pas de commentaire
c'est ma faute je n'ai pas indiqué cette possibilité dans l'exemple joint
 
Dernière édition:
G

Guest

Guest
Re : copie commentaire dans une autre feuille

Re,

Voici le fichier que tu nous a donné. Les macros fonctionnent avec.
A toi de voir ce qui est différents dans les commentaires (séparteurs de ligne 'vblf' ou 'vbcrlf').

Il faut qu'il y ait au moins 4 lignes de commentaire.

Tu es Barbatruc, tu devrais être maintenant à même de voir ce qui ne va pas.

A+
 

pascal21

XLDnaute Barbatruc
Re : copie commentaire dans une autre feuille

re
ce code est au dessus de mes maigres connaisances en vba
ce qui fonctionne
la date l'intervention la copie de la 4eme ligne "details
ce qui ne fonctionne pas l'info sur la machine en colonne B de sauvegardes et çà ne copie que le 1ere cellule trouvée
 
G

Guest

Guest
Re : copie commentaire dans une autre feuille

re,
Je t'ai donné le classeur sur lequel cela fonctionne. Je ne vais pas tourner en rond pour chercher ce qui ne va pas. Sans plus d'explication ni d'indications, je ne peux rien faire.
A+
 
Dernière modification par un modérateur:

pascal21

XLDnaute Barbatruc
Re : copie commentaire dans une autre feuille

je viens e regarder le classeur que tu as fourni
je veux bien croire que ça marchais chez toi
mais chez moi rien
je vais essayer plusieurs choses
relancer excel
essayer sur excel 2007
ou alors est ce que ce n'est pas due à une macro complémentaire qui manquerait
quoi qu'il en soit je comprends ta position quand tu dit ne pas avoir envie de tourner en rond
je lance mon enquète
merci quand même pour tout
 
G

Guest

Guest
Re : copie commentaire dans une autre feuille

re,

Il n'y a aucune bibliothèque particulière à charger. J'ai réalisé les macro sous excel 2002 (xp).
tu peux toujours tenter de renvoyer un nouveau classeur qui ressemble plus à ce que tu as, avec les macros.

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 683
Messages
2 090 910
Membres
104 693
dernier inscrit
azizou900