Visu feuille excel dans formulaire

multimania Messages postés 14 Date d'inscription jeudi 6 avril 2006 Statut Membre Dernière intervention 3 février 2012 - 13 juin 2006 à 15:33
multimania Messages postés 14 Date d'inscription jeudi 6 avril 2006 Statut Membre Dernière intervention 3 février 2012 - 20 juin 2006 à 09:57
Bonjour,

Comment faire pour visualiser une feuille excel (avec les Numéro de ligne et
colonne visible) dans un formulaire ?

Voici ce que j'aimerais faire:

Depuis une formulaire allez chercher sur le disque le nom d'un fichier Excel et aprés sélection du fichier le prévisualiser dans une fenêtre ou il serait possible (sans le modifier) de le visualiser en entier.
Le top serait de pouvoir aprés une sélection de certaines cellules dans la visu du fichier excel de renvoyé la plage de donnée dans une autre zone de
texte ou autre.

Merci de vos informations et de vos idées à ce sujet.

Cordialement

4 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
14 juin 2006 à 07:35
j'ai fait ça dans un de mes projets, au boulot....

je démarre une instance de Excel.Application,

en suite, je récupère le hWnd de la fenetre (en modifiant le caption de l'application, puis, en utilisant l'API FindWindow)

une fois ce hWnd récupéré, un p'tit coup d'API SetParent et voilà... ma feuille excel enfermée dans une pictureBox...


bon, j'ai ajouté en fait ca dans un usercontrol, j'ai supprimé les bordures de la feuille excel et je l'ai agrandit un peu plus,

pour eviter que le User ne la resize, mais ca, c'est 'un détail' ^^

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
multimania Messages postés 14 Date d'inscription jeudi 6 avril 2006 Statut Membre Dernière intervention 3 février 2012
19 juin 2006 à 17:31
Bonjour et merci de ta reponse, mais aurrait tu un petit exemple de code afin que je m'en sorte mieux.

D'avance encore merci
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
19 juin 2006 à 17:48
ce genre de chose :
    Set Excel = CreateObject("Excel.Application")
    Excel.Caption = App.Title & " New Excel Window Caption"
    Excel_hwnd = FindWindow("XLMAIN", Excel.Caption)
    SetParent Excel_hwnd, Me.hwnd
    With Excel
        .DisplayAlerts = False
        If LenB(vsFilePath) = 0 Then
            .Workbooks.Add
            mPath = vbNullString
            mFileTitle = vbNullString
        Else
            On Error Resume Next
            Excel.Workbooks.Open vsFilePath, False, True
            On Error GoTo 0
            mPath = Left$(vsFilePath, InStrRev(vsFilePath, ""))
            mFileTitle = Mid$(vsFilePath, InStrRev(vsFilePath, "") + 1)
        End If

        GetWindowRect UserControl.hwnd, lpR
        MoveWindow Excel_hwnd, 0, 0, lpR.Right - lpR.Left, Height = lpR.Bottom - lpR.Top, False
        .Visible = True

        Style = GetWindowLong(Excel_hwnd, GWL_STYLE)
        Style = Style And Not WS_CAPTION
        Style = Style And Not WS_SIZEBOX
        SetWindowLong Excel_hwnd, GWL_STYLE, Style

        Placement.Length = Len(Placement)
        GetWindowPlacement Excel_hwnd, Placement
        Placement.showCmd = SW_MAXIMIZE
        SetWindowPlacement Excel_hwnd, Placement

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
multimania Messages postés 14 Date d'inscription jeudi 6 avril 2006 Statut Membre Dernière intervention 3 février 2012
20 juin 2006 à 09:57
Super Merci beaucoup !!
0
Rejoignez-nous