Insertion userform dans feuille xls en vba

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
Configuration: Windows XP
Internet Explorer 6.0

6 réponses

  1. 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)
    1. 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 ?
      1. Tu l'as mise ou cette fonction ? Elle doit être déclarée en entête de module.

        Kikou toi ;o) ..
        1. 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 ?
          1. Yes .... ça doit le faire comme ça.

            ;o)

            Je vais en réu là ... GRRRRRRRRRRRRRRR
            1. 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

              Discussions similaires

              arriere plan

              1 réponse