IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Interfaçage autre langage Python Discussion :

Python et Excel


Sujet :

Interfaçage autre langage Python

  1. #21
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2016
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2016
    Messages : 30
    Points : 13
    Points
    13
    Par défaut
    Bonjour,

    Je vais plutôt utiliser pywin32 et ouvrir un autre sujet si besoin.

    Merci,

    Cordialement,

  2. #22
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut
    hello,
    il y a plus simple que pywin32 pour exploiter un classeur excel sous windows : xlwings
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import xlwings as xw
    excel_app = xw.App(visible=False)
    excel_books = excel_app.books
    wbk = excel_books.open('d:/dev/office/excel/Classeur1.xlsm')
    ws = wbk.sheets[0]
    print(ws.cells(8,1).value)
    print(ws.cells(9,1).value)
    print(ws.cells(1,2).value)
    print(ws.cells(1,2).formula)
    ws.cells(1,2).formula = '=A8-A9'
    print(ws.cells(1,2).value)
    wbk.save('d:/dev/office/excel/ClasseurN.xlsm')
    wbk.close()
    excel_app.quit()
    Mais soyons clair :
    1 - Excel avec pywin32 ne tourne que sous windows et nécessite que excel soit installé sur l'ordinateur. Pour xlwings il peut tourner sous les O.S où l'on peut installer Excel (donc pas sous linux).
    2 - Openpyxl n'évalue pas les formules donc en mode data_only = true il utilise les valeurs des formules qui ont été calculées et enregistrées (par exemple avec Excel).
    3 - En ce qui concerne LibreOffice. On peut commander calc (le tableur LibreOffice) de l'extérieur mais il faut utiliser le python de LibreOffice (sous windows c'est un python installé par LibreOffice, sous linux cela peut être le python principal de l'O.S). A noter que sous windows on peut aussi commander LibreOffice par pywin32 (objets COM comme avec excel).


    Donc tout dépend de ce que tu as d'installé sur ton ordinateur (suite bureautique). Et Sinon utilises-tu un IDE python autre que celui fournit avec python (ex : pycharm, eric6, anaconda, spyder etc...) ?.


    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  3. #23
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2016
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2016
    Messages : 30
    Points : 13
    Points
    13
    Par défaut
    Bonjour,

    Mon PC est sous Windows + Office.
    J'ai pu sans problème lire et exécuter la feuille de calcul Excel via pywin32. Les instructions Python sont comparables à celles que tu indiques.
    J'obtiens bien des résultats différents en fonction des paramètres.

    Je ne comprends pas trop ce que veux dire dans ton 2). Même si je n'en ai pas eu besoin il semble qu'avec Pywin32 on puisse modifier des formules Excel depuis Python.

    Je note que je pourrais utiliser le programme réalisé sur un autre PC Windows avec Calc sous réserve de modifications.


    Parfois j’ai un message qui s’affiche « Microsoft Excel attend la fin de l’exécution d’une action OLE d’une autre application » . Arrêter Excel dans le gestionnaire des tâches ne suffit pas à faire disparaître ce message.



    Cordialement,

Discussions similaires

  1. Python et Excel
    Par Dewtime dans le forum Général Python
    Réponses: 2
    Dernier message: 14/04/2014, 14h57
  2. Python module excel
    Par PadawanInPerl dans le forum Général Python
    Réponses: 16
    Dernier message: 29/08/2012, 09h53
  3. Appel de python depuis excel
    Par Bayard dans le forum Général Python
    Réponses: 2
    Dernier message: 11/09/2010, 17h07
  4. Python et excel
    Par Jiyuu dans le forum Bibliothèques tierces
    Réponses: 9
    Dernier message: 05/11/2008, 13h35
  5. python et excel [win32com] : caractériel ? SOS
    Par preacher_man dans le forum Bibliothèques tierces
    Réponses: 5
    Dernier message: 19/10/2005, 17h24

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