Insertion userform dans feuille xls en vba

Fermé
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008 - 15 sept. 2008 à 16:11
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008 - 15 sept. 2008 à 17:44
Bonjour,

j'aimerai savoir comment inserer un userform dans une feuille excel.
j'ai trouvé ce bout de code sur le net mais j'ai un soucis sur le keybd_event qui est introuvable

Option Explicit

Private Declare Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)

Private Sub CommandButton1_Click()
Dim Ws As Worksheet

'Copie d'écran de la forme active
keybd_event vbKeySnapshot, 1, 0&, 0&
DoEvents

'Ajoute une feuille pour coller l'image de la forme
Set Ws = Sheets.Add
Ws.Paste

'impression centrée dans la page
With Ws
.PageSetup.CenterHorizontally = True
.PageSetup.CenterVertically = True
.PrintOut
End With
End Sub



merci de votre aide a tous
A voir également:

6 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
15 sept. 2008 à 16:22
Bonjour niny@

J'ai essayer le code et ça fonctionne. Ca insère l'image de la Userform dans la feuille Excel.

Quel problème rencontres-tu avec l'API ?

;o)
0
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008
15 sept. 2008 à 16:48
kikou toi !

ben il me dit que
Private Declare Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)

"seul les commentaires sont en dehors d'une fonction"

j'ai l'impression que ca va pas au niveau du keybd_event...
est ce un pb de librairie ?
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
15 sept. 2008 à 16:51
Tu l'as mise ou cette fonction ? Elle doit être déclarée en entête de module.

Kikou toi ;o) ..
0
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008
15 sept. 2008 à 16:57
lol
ca a marché ! je crois que c'est moi qui suis dans le paté aujourdh'ui !
si je ne veux pas que ca rajoute une page dans mon fichier xls mais que ca aille dans une feuille qui porte un nom "X" je remplace set ws = sheets.add
par seulement :

Workbooks(Module_auto_BE.nom_classeur).Sheets(feuille_break).paste

non ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
15 sept. 2008 à 17:00
Yes .... ça doit le faire comme ça.

;o)

Je vais en réu là ... GRRRRRRRRRRRRRRR
0
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008
15 sept. 2008 à 17:44
en espérant que ta réunion se passe bien !

c'est bon ca marche !

encore merci pour ton aide !
a très très bientôt Polux
0