Salut

Tout est dans le titre .
Cette démonstration fait suite à cette discussion Copier dans le presse papier le contenu d'un Select

L’essentiel est dans
  • Sub CopierPP(Objet)
    Objet doit être le Name ou l’Id contenant le texte à copier dans le presse papier
  • Sub GoRecup_OnClick
    C’est là ou on colle le contenu du presse, ici dans la boite portant le Name BoiteVisu
  • Sub GoVide_OnClick
    Ici on vide le presse papier

Si d’entrée vous cliquer sur le bouton Visualiser le contenu texte du presse papier, vous obtiendrez le contenu texte de votre dernier copier, donc pas un des textes provenant des boites se trouvant sur la page du programme.

Dans le cadre du haut (bleu clair), le remplissage du presse papier se fait automatiquement par déclenchement de l’évènement OnChange.
Dans le cadre suivant (vert clair), vous devez déclencher l’événement remplissage du presse papier par un clique sur le bouton Copier (évènement onClick)
Dans le cadre suivant (jaune clair), le remplissage se produit a la suite de la sélection d’un fichier de la boite d’exploration (évènement OnChange).
Le
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<HTML>
	<HEAD>
	<TITLE> Utilisation du presse papier système (Clipboard) </TITLE>
		<HTA:APPLICATION
         ApplicationName = "ClipBoardHTA"
         Id="ClipBoardHTA"
		>
	</HEAD>
	<SCRIPT language="VBScript" type="text/VBScript" >
		' Déclarations utilisables dans toute la partie VBScript 
		dim MsG
'------------------------------------------------------------------------------------------------------------------
		Sub Window_Onload()
			ResizeTo 960,500
			MoveTo (Screen.availWidth-960)/2,(Screen.availHeight - 500) / 2
		End Sub
'------------------------------------------------------------------------------------------------------------------
		Sub CopierPP(Objet)
			'Copier du texte dans le presse papier
 
			Dim U
			'Initialise la variable a destination du presse papier
			MsG = "Le dernier coller dans le presse papier a échoué"
			'Si une erreur survient dans la récupération du texte de (Objet)
			'on aurai l'information qu'il y a eu un problème.
 
			'la récupération du texte est différente suivant le type de (objet)
			Select Case Objet.type
				'_____________ Liste à sélection multiple _____________
				Case "select-multiple"
					MsG = ""
					For U = 0 to Objet.length - 1
						If Objet(U).Selected Then
							MsG = MsG & Objet(U).value & VBCrlf
						End If
					Next
					'Supprime l'éventuel VBCrlf de fin de chaine
					If MsG <> "" Then MsG = left(MsG, len(MsG) - len(VBCrlf))
 
				'_______________________ Liste à sélection unique ou __________________________
				'________________ boite texte sur une ligne ou multiligne ou __________________
				'________________ boite texte mot de passe ou Explorateur _____________________
				Case "select-one", "text", "textarea", "password", "file": MsG = Objet.Value
 
				End Select
			'Copie du contenu de la variable MsG dans le presse papier système
			Call CreateObject("htmlfile").ParentWindow.ClipboardData.setData("text",MsG)
		End Sub
'----------------------------------------------------------------------------------------------------------------------
		Sub GoRecup_OnClick()
			'Récupérer le contenu texte du presse papier
			MsG = CreateObject("htmlfile").ParentWindow.clipboardData.Getdata("text")
			If IsNull(MsG) = True then MsG = "Le presse papier est vide de texte"
			BoiteVisu.value = MsG
		End Sub
'----------------------------------------------------------------------------------------------------------------------
		Sub GoVide_OnClick()
			'Vider le contenu texte du presse papier
			Call CreateObject("htmlfile").ParentWindow.clipboardData.ClearData("text")
		End Sub
'----------------------------------------------------------------------------------------------------------------------
	</SCRIPT>
	<Body>
		<Fieldset STYLE="background-color:#F4FFFF">
			<legend STYLE="color:#000095"> Listes, votre sélection sera collé dans le presse papier </legend>
			<span STYLE="color:blue"> <font size="2"> Liste à sélection unique </font> </span>
			<SELECT name="LstChoix" onchange="CopierPP LstChoix">
				<OPTION VALUE="Premier choix">Premier choix
				<OPTION VALUE="Deuxième choix">Deuxième choix
				<OPTION VALUE="Un autre encore">Un autre encore
				<OPTION VALUE="Aller, le dernier choix">Aller, le dernier choix
			</SELECT>
			<span STYLE="color:blue"><font size="2"> Liste à sélection multiple (Ctrl + Click) </font></span>
			<SELECT name="LstChoix2" onchange="CopierPP LstChoix2" SIZE=4 MULTIPLE>
				<OPTION VALUE="Du multi-sélection">Du multi-sélection
				<OPTION VALUE="c'est possible aussi">c'est possible aussi
				<OPTION VALUE="de le mettre">de le mettre
				<OPTION VALUE="dans le presse papier">dans le presse papier
			</SELECT>
		</Fieldset>
		<BR>
		<Fieldset STYLE="background-color:#D9FFBF">
			<legend STYLE="color:#005400"> Boites de texte </legend>
			<span STYLE="color:#009500"> <font size="2"> Une ligne </font> </span>
			<INPUT Type="text" name="BoiteText">
			<INPUT Type="button" name="BtCopier" value="Copier" onClick="CopierPP BoiteText">
			<span STYLE="color:#009500"><font size="2"> Multi ligne </font></span>
			<TEXTAREA name="BoiteText2"> </TEXTAREA>
			<INPUT Type="button" name="BtCopier2" value="Copier" onClick="CopierPP BoiteText2">
			<span STYLE="color:#009500"><font size="2"> Mot de passe </font> </span>
			<INPUT Type="password" name="BoiteTextPass">
			<INPUT Type="button" name="BtCopier3" value="Copier" onClick="CopierPP BoiteTextPass">
		</Fieldset>
		<BR>
		<Fieldset STYLE="background-color:#FFFFB7">
			<legend STYLE="color:#AF7600"> Explorateur </legend>
			<INPUT Type="file" name="FileDoss" onchange="CopierPP FileDoss">  
		</Fieldset>
		<BR> <BR>
		<INPUT Type="button" name="GoRecup" value="Visualiser le contenu texte du presse papier">
		<INPUT Type="button" name="GoVide" value="Vider le presse papier">
		<BR>
		<TEXTAREA name="BoiteVisu" style="border-style:solid; width:902px; height:110px"></TEXTAREA>
	</Body>
</HTML>