[Python]Export de donnees cellule vers autre fichier
Modérateur : Vilains modOOs
Règles du forum
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
-
- Fraîchement OOthentifié
- Messages : 4
- Inscription : 09 juil. 2018 06:23
[Python]Export de donnees cellule vers autre fichier
Bonjour
Je dois faire une macro (codée en python) pour un fichier calc. Cette macro consiste à exporter des données contenues dans certaines cellules vers un autre fichier.
je l'ai écrite avec notepad++, et donc mise dans le fichier Scripts de LibreOffice mais LibreOffice la reconnait comme un dossier et pas un module/script.
Je n'ai pas trouver de solution sur les forums. Quelles erreurs aurais je pu faire? faut -il obligatoirement mettre les bibliothèques python dans python?
Merci
Je dois faire une macro (codée en python) pour un fichier calc. Cette macro consiste à exporter des données contenues dans certaines cellules vers un autre fichier.
je l'ai écrite avec notepad++, et donc mise dans le fichier Scripts de LibreOffice mais LibreOffice la reconnait comme un dossier et pas un module/script.
Je n'ai pas trouver de solution sur les forums. Quelles erreurs aurais je pu faire? faut -il obligatoirement mettre les bibliothèques python dans python?
Merci
Dernière modification par Oukcha le 09 juil. 2018 08:17, modifié 2 fois.
Raison : Titre corrigé
Raison : Titre corrigé
Libre Office 5.2.6.2 (version obligatoire)
Windows 7
Windows 7
-
- Fraîchement OOthentifié
- Messages : 4
- Inscription : 09 juil. 2018 06:23
Re: [Calc]macro python non reconnue
Code : Tout sélectionner
#-*- coding: utf-8 -*-
import os
from datetime import datetime, date, timedelta , time
from odsreader import ODSReader
import os, shutil
import ftplib
from ftplib import FTP
from os import chdir
import os.path
def Bouton_QuandClic( ):
# Passage de t0 en TU
# Date et heure actuelles
Now= datetime.now()
# Heure servant pour le passage en heure TU
TU=timedelta(hours=2)
TU1=timedelta(hours=1)
if Now > datetime(2016,03,27,02,00,00) and Now < datetime(2016,10,30,03,00,00):
#Heure en TU= Heure actuelle - 2H
maintenant_TU=Now-TU
elif Now > datetime(2017,03,26,02,00,00) and Now < datetime(2017,10,29,03,00,00):
maintenant_TU=Now-TU
elif Now > datetime(2018,03,25,02,00,00) and Now < datetime(2018,10,28,03,00,00):
maintenant_TU=Now-TU
elif Now > datetime(2019,03,24,02,00,00) and Now < datetime(2019,10,27,03,00,00):
maintenant_TU=Now-TU
elif Now > datetime(2020,03,29,02,00,00) and Now < datetime(2020,10,25,03,00,00):
maintenant_TU=Now-TU
else
maintenant_TU=Now-TU1
# Répertoire local entree
chemin= "C:/"
if chemin >0:
Chemin_export="C:/"
# Test si présence de prévisions
Nb_previ_feuille1 =0
Nb_previ_feuille2=0
Nb_previ_feuille3=0
Previ=""
#Sélection du classeur Calc
fichier_ods='fichier.ods'
classeur= odsReader.ODSReader(fichier_ods)
#Sélection des feuilles utilisées
feuille1 = classeur.getSheet("feuille1")
feuille2 = classeur.getSheet("feuille2")
feuille3= classeur.getSheet("feuille3")
# relevé des données
for I in range(1,50+1):
date_prevision_TU= (ligne_101=feuille1[1+I])
if date_prevision_TU and Nb_previ_feuille1<4:
if date_prevision_TU > maintenant_TU and isnumeric(ligne_104=feuille1[1+I]):
Nb_previ_feuille1 = Nb_previ_feuille1 + 1
Previ = Previ + "/n"+ format(maintenant_TU, "%d/%m/%y %H:%M") + format(ligne_104=feuille1[1+I], "0.00") + ";-999.999;-999.999"
for I in range(1,50+1):
date_prevision_TU=(ligne_101=feuille2[1+I])
if date_prevision_TU and Nb_previ_feuille2<4:
if date_prevision_TU >maintenant_TU and isnumeric(ligne_104=feuille2[1+I]):
Nb_previ_feuille2 = Nb_previ_feuille2 +1
Previ = Previ + "/n" + format(maintenant_TU, "%d/%m/%y %H:%M") + ";-999.999;" + format(ligne_104=feuille2[1+I], "0.00") + ";-999.999"
for I in range(1,50+1):
date_prevision_TU=(ligne_101=feuille3[1+I])
if date_prevision_TU and Nb_previ_feuille3 <4 :
if date_prevision_TU> maintenant_TU and isnumeric(ligne_104=feuille3[1+I]):
Nb_previ_feuille3 = Nb_previ_feuille3+1
Previ=Previ + "/n"+ format(maintenant_TU, "%d/%m/%y %H:%M") + ";999.999;-999.999;" + Format(ligne_104=feuille3[1+I], "0.00")
Libre Office 5.2.6.2 (version obligatoire)
Windows 7
Windows 7
-
- RespOOnsable modération
- Messages : 3949
- Inscription : 06 oct. 2008 08:03
Re: [Calc]macro python non reconnue
Bonjour et bienvenue,
(relire le bandeau rouge en haut de page)
Titre corrigé par la modération.
Merci de ne pas poster plusieurs messages à la suite, si vous devez ajouter un complément d'information, le bouton "Editer" à la droite du message permet d'y remédier.
Cordialement
Dans ce cas là, la balise à employer est [Python].stef_02 a écrit :Je dois faire une macro (codée en python)
Voilà ce qui doit figurer dans votre titre, le terme "Macro" étant implicite.stef_02 a écrit : Cette macro consiste à exporter des données contenues dans certaines cellules vers un autre fichier.
(relire le bandeau rouge en haut de page)
Titre corrigé par la modération.
Merci de ne pas poster plusieurs messages à la suite, si vous devez ajouter un complément d'information, le bouton "Editer" à la droite du message permet d'y remédier.
Cordialement
Pour tout savoir sur le fonctionnement de ce forum À lire avant tout !
-
- SuppOOrter
- Messages : 1214
- Inscription : 06 avr. 2016 07:26
Re: [Python]Export de donnees cellule vers autre fichier
Bonjour,
Cordialement.
Oui, les scripts python ne seront reconnus que s'ils se trouvent dans le répertoire <user>/Scripts/python/.stef_02 a écrit :Quelles erreurs aurais je pu faire? faut -il obligatoirement mettre les bibliothèques python dans python?
Cordialement.
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
-
- Membre lOOyal
- Messages : 40
- Inscription : 03 janv. 2017 13:54
Re: [Python]Export de donnees cellule vers autre fichier
Bonjour,
cf. le lien de ma signature vers le wiki de LibreOffice pour plus d’infos sur les macros Python
cf. le lien de ma signature vers le wiki de LibreOffice pour plus d’infos sur les macros Python
libO 5.4 64bit, (PortableApps: libO 6.0, aOO 4.1, OOo 3.2 32bit) sur Win7/Win10 x64 | aOO 4.1.x et libO 5.4.x sur Mint 18 Sarah et OSX 10.9 Mavericks x64
Boîte à Outils Python: Geany, PyCharm et bien sûr APSO, MRI..
https://wiki.documentfoundation.org/Mac ... n_Guide/fr
Boîte à Outils Python: Geany, PyCharm et bien sûr APSO, MRI..
https://wiki.documentfoundation.org/Mac ... n_Guide/fr
-
- Fraîchement OOthentifié
- Messages : 4
- Inscription : 09 juil. 2018 06:23
Re: [Python]Export de donnees cellule vers autre fichier
Bonjour, merci de vos réponses même si celles ci ne m'ont pas été très utiles. j'ai trouvé, je pense, la source de mon problème. Une des bibliothèques que j'utilise n'a pas l'air de fonctionner/d’être complète puis elle est écrite en python2 et je travaille en python3. Je dois donc changer, je vais chercher une bibliothèque qui lit des cellules des feuilles d'un fichier calc. Si vous en avez des bonnes, je ne suis pas contre que vous me les partagiez
Libre Office 5.2.6.2 (version obligatoire)
Windows 7
Windows 7
-
- SuppOOrter
- Messages : 1214
- Inscription : 06 avr. 2016 07:26
Re: [Python]Export de donnees cellule vers autre fichier
On ne pourra pas t'aider plus si tu ne nous aides pas à comprendre ton besoin et ton problème.
Précises-nous le contexte d'utilisation (depuis LibreOffice ? depuis un programme extérieur ?...), fournis-nous le code (complet) que tu utilises et un fichier exemple (même avec des données bidons).
Précises-nous le contexte d'utilisation (depuis LibreOffice ? depuis un programme extérieur ?...), fournis-nous le code (complet) que tu utilises et un fichier exemple (même avec des données bidons).
Ajout : Je viens de jeter un oeil plus attentif sur ton bout de code et, si je comprends bien, tu souhaites manipuler des fichiers ods en dehors de toute interaction avec OpenOffice ou LibreOffice. Si c'est bien le cas, tu ne trouveras pas beaucoup d'infos sur ce forum, avant tout consacré à l'utilisation des suites bureautiques. J'ai essayé, il y a un certain temps, de jouer avec odfpy, mais la prise en main était plutôt ardue et requiert une bonne connaissance du format odf. Il existe également ezodf, qui semble avoir un niveau d'abstraction plus élevé, mais je ne connais absolument pas. Un exemple tiré de leur site : Code : Tout sélectionner
|
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
-
- Fraîchement OOthentifié
- Messages : 4
- Inscription : 09 juil. 2018 06:23
Re: [Python]Export de donnees cellule vers autre fichier
Bonjour merci pour tes réponse. En effet tu as compris ce que j'ai besoin de faire j'ai essayer de télécharger ezodf, mais en le testant que IDLE de Python ça me met un message comme quoi il faut lxml, bon ok je le prend et rebelotte message d'erreur il trouve pas le bon module('etree'), aurait tu un lien pour lxml sans qu'il manque quoique ce soit et dans les bons formats(il y a des fichier PXD, PXI, H, PYX dedans)? s'il te plait
Quant a odfpy, je n'arrive pas à trouver comment lire les cellules/lignes/colonnes
Bref merci de ton aide, je continue de chercher de mon coter
Quant a odfpy, je n'arrive pas à trouver comment lire les cellules/lignes/colonnes
Bref merci de ton aide, je continue de chercher de mon coter
Libre Office 5.2.6.2 (version obligatoire)
Windows 7
Windows 7