[VBA] copier variable dans presse-papiers

Résolu
lml-mike Messages postés 455 Date d'inscription   Statut Contributeur Dernière intervention   -  
DedenK Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   -
Commencez par l'EDIT, si vous voulez être à la page :P

Bonjour,

J'ai un petit soucis avec word sur du VBA. En fait j'aimerai suite à une récupération de plusieurs variables saisies par l'utilisateur dans des inputbox, générer un texte avec ces variables à l'intérieur, ce qui permettrait de créer une configuration préfaite pour un routeur. Ce long texte sur plusieurs lignes sera ensuite copié dans le presse-papier après génération, prêt à être collé...

Le problème, c'est que je ne sais pas du tout comment inclure dans une variable un texte contenant des retours à la ligne. Ces retours à la ligne sont primordiaux, car ils valident chaque commande du routeur.


J'avais compris que la commande pour copier dans le presse papier était Clipboard.SetDataObject(conf), et que pour inclure mes variable dans ma variable il suffit de concaténer les zones pré-saisies des ledites variables :

dim conf as string

DNS = inputbox("saisir DNS")

conf = ("version 12.4
no service pad
service tcp-keepalives-in
service tcp - keepalives - out
hostname "&DNS&
service Password - encryption")

Clipboard.SetDataObject(conf)

msgbox("configuration générée et copiée dans le presse-papier !")


J'aurai voulu avoir la même chose, mais avec ces retours à la ligne qui soient contenus dans la variable, vous pensez que c'est possible ?

Merci infiniment !





EDIT : Bon, c'etait totalement stupide :

Dim conf As String

DNS = InputBox("saisir DNS")

conf = ("version 12.4" _
& Chr(10) & "no service pad" _
& Chr(10) & "service tcp-keepalives-in" _
& Chr(10) & "service tcp - keepalives - out" _
& Chr(10) & "hostname " & DNS _
& Chr(10) & "service Password - encryption")

MsgBox ("configuration générée et copiée dans le presse-papier !")


=> Par contre, la copie de la variable dans le presse papier ne marche pas...partout je vois que les gens selectionne un contenu avant de le copier dans le presse papier, tandis que moi j'aimerai juste copier le contenu de ma variable en String.

Merci !!!
A voir également:

2 réponses

lml-mike Messages postés 455 Date d'inscription   Statut Contributeur Dernière intervention   121
 
Bon, j'ai enfin trouvé une solution, et grâce à ton aide j'ai solutionné entièrement comment copié une variable dans le presse papier simplement...C'etait pas facile, d'autant plus que la solution est introuvable sur le net...bref !

Private Sub configuration_Click()

Dim conf As String

DNS = InputBox("saisir DNS")

conf = ("version 12.4" _
& Chr(13) & Chr(10) & "no service pad" _
& Chr(13) & Chr(10) & "service tcp-keepalives-in" _
& Chr(13) & Chr(10) & "service tcp - keepalives - out" _
& Chr(13) & Chr(10) & "hostname " & DNS _
& Chr(13) & Chr(10) & "service Password - encryption")

Set mydata = New DataObject
mydata.SetText conf
mydata.PutInClipboard

MsgBox ("configuration générée et copiée dans le presse-papier !")
End Sub
11
DedenK Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   8
 
Bonjour,

J'ai utilisé ce code pendant plusieurs semaines (il marchait à merveille !), mais on dirait que depuis la dernière mise à jour (je ne sais si c'est d'Office 365 ou de Windows 8), il me vide le presse-papier au lieu de coller dedans ! En clair, il copie du vide... Est-ce que vous constatez ça aussi ?

Merci, DedenK.
0
DedenK Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   8
 
Bonjour,

Finalement, c'est revenu... Bizarre... Pardon pour le dérangement.

Cordialement, DedenK.
0