Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA Extraction d'une partie d'un commentaire

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 !

Matt51100

XLDnaute Occasionnel
Bonjour à tous,

A partir d'un usf, je place un commentaire comme le montre le code suivant :


Code:
Sub test()
    Set temp = CreateObject("WScript.Network")
    Range("A1").AddComment
    Range("A1").Comment.Visible = False
    Range("A1").Comment.Text Text:=temp.UserName & " :" & Chr(10) & TextBox1.Value & Chr(10) & TextBox2.Value
End Sub

Maintenant, j'aimerais pouvoir extraire de ce commentaire, les valeurs (textbox1 et 2) pour pouvoir les remettre dans un autre usf lorsque j'initialise celui-ci.
Je n'ai aucun début de piste, ne connaissant pas réellement la position des valeurs dans le commentaire.

Merci d'avance.

A+, Matt.
 
Re : VBA Extraction d'une partie d'un commentaire

Bonjour,

en principe, cette petite macro fait le travail

pour le test, je l'ai fait sur la case selectionnée, mais il te suffit de remplacer selection par range("A1") ou autre.

Code:
Sub commentaire()

comm = Selection.Comment.Text
x1 = InStr(comm, Chr(10))
x2 = InStr(12, comm, Chr(10))
comm1 = Mid(comm, x1 + 1, x2 - x1 - 1)
comm2 = Right(comm, Len(comm) - x2)


End Sub

mikachu

EDIT: je précise que c'est prévu pour un commentaire sur 3 lignes et pas plus ni moins... aucun verrouillage contre les erreurs ou autre.
 
Dernière édition:
Re : VBA Extraction d'une partie d'un commentaire

Salut et merci,

Cela devrait faire l'affaire. je n'ai pas le temps de regarder en détail le calcul auquel tu te livres pour comm1 et comm2, je regarderais en détail des que j'ai le temps.
Par contre pourquoi démarrer à 12 dans ton instruction pour x2 ?

A+, Matt.
 
Re : VBA Extraction d'une partie d'un commentaire

Bonjour Matt51100 , mikachu

Une autre méthode :
VB:
Sub Test3()
Dim Tmp As Variant
Dim TxtBox1$, TxtBox2$
Tmp = Split(Range("$A$1").Comment.Text, Chr(10))
TxtBox1 = Tmp(1)
TxtBox2 = Tmp(2)
MsgBox "TextBox1 : " & TxtBox1 & vbLf & "TextBox2 : " & TxtBox2, 64, "Résultat"
End Sub

Cordialement
 
Re : VBA Extraction d'une partie d'un commentaire

Oups, il s'agit d'une erreur de ma part:

Code:
Sub commentaire()

comm = Selection.Comment.Text
x1 = InStr(comm, Chr(10))
x2 = InStr(x1+1, comm, Chr(10))
comm1 = Mid(comm, x1 + 1, x2 - x1 - 1)
comm2 = Right(comm, Len(comm) - x2)


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

Réponses
7
Affichages
871
Réponses
8
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…