1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

Export Excel avec vignette

Discussion dans 'Windev' créé par jfk2lax, Sept 5, 2018.

  1. jfk2lax

    jfk2lax Member

    Inscrit:
    Juin 26, 2018
    Messages:
    157
    J'aime reçus:
    9
    Bonjour,

    J'ai une table avec des vignettes à l'intérieur.
    J'aimerai pouvoir exporter cette table en fichier excel avec les vignettes.
    Est ce possible ? J'ai réussi à exporter les données en xls mais pas les images.
     
    Tags:
  2. channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Bonjour,

    Malheureusement via la fonction TableVersExcel() on peut pas le faire.

    Un extrait de l'aide :

    Mais peut être qu'on peut le faire manuellement en passant par les mémos.

    Dés que j'aurai un PC sous la main je vais essayer voir ça de plus près.

    Bon Dev.
     
    joker apprécie ceci.
  3. jfk2lax

    jfk2lax Member

    Inscrit:
    Juin 26, 2018
    Messages:
    157
    J'aime reçus:
    9

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour,

    Malheureusement via la fonction TableVersExcel() on peut pas le faire.

    Un extrait de l'aide :



    Mais peut être qu'on peut le faire manuellement en passant par les mémos.

    Dés que j'aurai un PC sous la main je vais essayer voir ça de plus près.

    Bon Dev.
    Cliquez pour agrandir...
    Oui j'avais vu la documentation merci. Je pensai qu'il y avait une méthode pour contourner cette limitation mais visiblement non
     
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    J'ai jamais dis que c'est impossible ;)

    Voici un exemple vite fait, il utilise le pilotage d'Excel via OLE Automation

    voici le code

    Code (Text):
    MonExcel est un objet OLE dynamique
    MonExcel = allouer un objet OLE "Excel.Application"
    MaCellule est un objet Automation dynamique

    i est un entier
    sFic est une chaîne
    // Demande le nom du fichier
    sFic = fSélecteur("", "", "Choisissez le fichier d'exportation", ...
    "Fichiers Excel (*.xls) *.xls", "xls", fselCrée + fselExiste)
    // Si le nom n'a pas été fourni, abandonne l'export
    // Sinon, exporte le contenu du champ Table TABLE_TABLE1
    SI sFic <> "" ALORS TableVersExcel(TABLE_F_Param_banque, sFic)

    SI ErreurDétectée() ALORS
        Erreur(ErreurInfo())
        RETOUR
    FIN

    fRepCrée(fRepExe()+"\Temp")

    MonExcel>>Visible=Vrai
    MonExcel>>WorkBooks>>Open(sFic)

    i = 2
    POUR TOUTE LIGNE DE TABLE_F_Param_banque
        HExtraitMémo(F_Param_banque,logo,fRepExe()+"\Temp\img_"+i+".jpg")
        // on sélectionne sa cellule
        MaCellule = MonExcel>>activeSheet>>Range("C"+i)
        // on insère une image
        MonExcel>>ActiveSheet>>Shapes>>AddPicture( fRepExe()+"\Temp\img_"+i+".jpg", False, True, ...
        MaCellule>>Left,MaCellule>>Top,MaCellule>>Width,MaCellule>>Height)
        i++
    FIN

    MonExcel>>ActiveWorkBook>>Save()
    MonExcel>>quit()
    libérer(MonExcel)

     
    P.S.1 Il faut l'adapter selon ta propre table pour trouver la bonne colonne pour insérer les images
    P.S.2 Pour ne pas afficher le fichier pendant l’opération : MonExcel>>Visible=
    Faux
    P.S.3 Tu peux aussi créer directement ton fichier Excel sans passer par le sélecteur

    P.S.4 Si t'utilise plusieurs vignettes pour une seule image alors on peut voir ce qu'on peut faire plus tard :p

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Bon Dev.
     
    #4 channibal, Sept 5, 2018
    Dernière édition: Sept 5, 2018
  • Partager cette page

    Chargement...