1. #1
    Membre actif
    Homme Profil pro
    retraité
    Inscrit en
    juillet 2011
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : juillet 2011
    Messages : 300
    Points : 213
    Points
    213

    Par défaut Enregistrer un fichier excel au format binaire

    Bonjour
    cette instruction donne une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Set  xlapp = CreateObject("Excel.Application")
        Set owk =   xlapp.Workbooks.Add
        Set owk =   xlapp.Workbooks.Add
            owk.SaveAs ("fichier binaire.xlsb")
    Comment formuler la commande?
    Merci d'avance.

    PS.version Excel 97

  2. #2
    Expert éminent

    Homme Profil pro
    Développeur .NET
    Inscrit en
    janvier 2012
    Messages
    3 677
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : janvier 2012
    Messages : 3 677
    Points : 7 446
    Points
    7 446
    Billets dans le blog
    17

    Par défaut

    Bonjour,

    Le format xlsb n'est pas supporté avant Excel 2007.

    En fait, le format xls est déjà un fichier binaire.

    En résumé :

    Avant Office 2007 (extensions à 3 lettres ) ==> Fichiers binaires dans un format propriétaire Microsoft.

    Depuis Office 2007 (extensions à 4 lettres) ==> Fichiers xml (textes et feuilles de calculs) et fichiers binaires (macros, images, sons, vidéos ) regroupés dans un conteneur au format zip
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    À force de vouloir considérer les utilisateurs comme des imbéciles patentés, on risque de se mettre dans le trouble.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  3. #3
    Membre actif
    Homme Profil pro
    retraité
    Inscrit en
    juillet 2011
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : juillet 2011
    Messages : 300
    Points : 213
    Points
    213

    Par défaut

    bonjour
    ok, pour la réponse.
    Par contre si je crée un fichier en format normal (XLS), tout se passe bien; le programme se termine sans erreur.
    Seulement, lorsque je veux le rouvrir (manuellement) voila le message qui apparait :

    "Le format du fichier que vous tentez d'ouvrir, xxxxx.xls, est différent de celui spécifié par l'extension de fichier.
    Assurez-vous que le fichier n'est pas endommagé et qu'il provient d'une source fiable avant de l'ouvrir. Souhaitez-vous ouvrir le fichier maintenant?
    "

    Lorsque je réponds "Oui", celui-ci s'ouvre bien.

    PS. je me suis trompé sur ma version Excel , c'est celle de 2007
    veuillez m'excuser

  4. #4
    Membre chevronné
    Inscrit en
    octobre 2011
    Messages
    1 013
    Détails du profil
    Informations forums :
    Inscription : octobre 2011
    Messages : 1 013
    Points : 1 755
    Points
    1 755

    Par défaut

    La méthode SaveAs a des options, parametrès positionels, disponibles:
    https://msdn.microsoft.com/en-us/lib.../ff841185.aspx
    Citation Envoyé par documentation
    Syntax

    expression .SaveAs(FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)

    expression A variable that represents a Workbook object.
    Et FileFormat disponible est listé dans la documentation aussi:
    https://msdn.microsoft.com/en-us/lib.../ff198017.aspx

    XLExcel12 (50) s'applique pour xlsb... donc, on peut faire comme ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    owk.SaveAs "fichier binaire.xlsb", 50    'XLExcel12=50

  5. #5
    Membre actif
    Homme Profil pro
    retraité
    Inscrit en
    juillet 2011
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : juillet 2011
    Messages : 300
    Points : 213
    Points
    213

    Par défaut

    Merci pour la réponse.

    Mais je ne comprends pas comment on fait la liaison entre XlExcel12 et xlsb; ce n'est pas évident!
    De ce fait je ne vois pas les équivalents avec xls et xlsm.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Code d'enregistrement d'un fichier excel sous format PDF
    Par troy1985 dans le forum Excel
    Réponses: 3
    Dernier message: 16/01/2014, 13h25
  2. [VBA]enregistrer en fichier excel en macro
    Par jazziestan dans le forum SDK
    Réponses: 12
    Dernier message: 29/12/2006, 10h07
  3. Enregistrer un fichier Excel côté client
    Par scorpking dans le forum Bureautique
    Réponses: 14
    Dernier message: 18/07/2006, 11h10
  4. Réponses: 7
    Dernier message: 28/01/2006, 10h50
  5. Ouvrire ou Enregistrer un Fichier Excel
    Par jo281 dans le forum ASP
    Réponses: 1
    Dernier message: 13/12/2005, 18h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo