• Initiateur de la discussion Initiateur de la discussion Smirnoff
  • Date de début Date de début

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 !

S

Smirnoff

Guest
Bonjours, voici mon petit VB

Option Private Module

Sub CommentaireDivx()
Dim Adr As Variant
Adr = ????
Set cmt = ActiveCell.AddComment
With cmt.Shape
.Height = 226.5
.Width = 156
cmt.Text Text:=""

End With
End Sub


J'aimerais pouvoir demander a l'utilisateur de saisis son texte
le texte etant un copier collé d'une autre application
style

text1:
text2:
...

Mais je ne sais pas comment faire apparaitre une popup ou encore comment allez lire directement dans le buffer de windows ...
merci d'avance
 
Voici uen formule qui marche

Option Private Module

Sub CommentaireDivx()

Dim Texte As String, Ligne As String
Dim I As Integer, J As Integer
Dim DObj As New DataObject
DObj.GetFromClipboard
Texte = DObj.GetText(1)

Set cmt = ActiveCell.AddComment
With cmt.Shape
.Height = 226.5
.Width = 156
cmt.Text Text:=Texte

End With
End Sub

sauf qu'il ajoute des "carre" a chaque fin de ligne, pouvez vous m'aider a les retirer

re merci
 
bonjour

essaye la fonction Clean, si je me souviens bien de comment l´appliquer, cela donne cela : txt=application.worksheetfunction.clean(txt)


j´espère que cela va marcher, c´est à préférer à des méthodes de substituion de caractères.

ciao
steph
 
Option Private Module

Sub CommentaireDivx()

Dim Texte As String
Dim DObj As New DataObject
DObj.GetFromClipboard
Texte = DObj.GetText
Texte = Application.WorksheetFunction.Clean(Texte)
Set cmt = ActiveCell.AddComment
With cmt.Shape
.Height = 226.5
.Width = 156
cmt.Text Text:=Texte
End With

End Sub

voici donc ... donc cela a bien fonctionner pour les petit carré mais cela a supprimer les Carriege return .... embetant, une autre idée ou modifictation?
merci d'avance
 
bonjour

je te propose de regarder autre chose, un code qiu d2coupe chaque ligne contenu dans le presse-papiers :

va à la section suivante <http://xlbysteph.free.fr/aideinformatique/actioncellule.htm#Presse_papier>

et cherche le code "Connaître chaque ligne du presse-papiers"

bye
Stéphane
 
ce qui donen et qui fonctionen a la perfection un tout grand merc a toi pur toute ton aide!!!!


Option Private Module

Sub CommentaireDivx()

Dim Texte As String, Ligne As String
Dim txtfinal As String
Dim I As Integer, J As Integer
Dim DObj As New DataObject
DObj.GetFromClipboard
Texte = DObj.GetText(1)
Do
I = J + 1
J = InStr(I, Texte, vbCr)
Ligne = Mid$(Texte, I, IIf(J, J - I, Len(Texte) - I + 1))
txtfinal = txtfinal + Ligne
Loop While J
Set cmt = ActiveCell.AddComment
With cmt.Shape
.Height = 226.5
.Width = 156
cmt.Text Text:=txtfinal
End With

End Sub


voila la fonction finale au cas ou cela servirais a kelk'un
merci bcp bcp bcp !!!
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
0
Affichages
801
Réponses
2
Affichages
966
Réponses
1
Affichages
1 K
Réponses
2
Affichages
1 K
Retour