1 pièce(s) jointe(s)
openoffice calc : mettre une formule de concatenation dans la cellule de fichiers et extraire le résultat une
Bonjour chers camarades,
1. j'ai commencé avec le basic sur Amstrad 6128, alors je patauge un peu et chatgpt n'est pas que mon ami...
2. J'aimerais insérer dans la cellule (D1) de tous les fichiers ayant un nom contenant le texte AZE.ods (calc openoffice) une formule de concaténation du type =JOINDRE.TEXTE(", ";1;D2:D100) et obtenir la liste des textes contenus dans les cellules D2 à D100 avec un séparateur virgule.
3. Ensuite, j'aimerais extraire le contenu "texte" de la cellule D1 de l'ensemble des fichiers pour le placer une colonne d'un autre tableau (colonne D).
----
Pour l'instant je piétine avec le 2. J'ai ce script, mais :
I. cela ne supprime pas le contenu de la cellule cible
II. cela n'insert pas de formule dans la cellule cible (seulement avec textjoint, mais qui ne donne rien sur openoffice calc)
III. en utilisant JOINDRE.TEXTE(", ";1;D2:D5)"), j'ai en plus ce message d'erreur de format non respecté : def update_cell_with_formula(file_path, formula="of:=JOINDRE.TEXTE(", ";1;D2:D5)"):
----
Je joins le script. Merci à ce forum et aux curieux qui viendront jeter un œil bienveillant sur mes déboires.
Bien à vous !
Pièce jointe 659563
PyCharm n'est pas d'accord ???
Citation:
Envoyé par
jurassic pork
hello,
on peut aussi utiliser le paquet
pandas pour faire le traitement car il sait manipuler les fichiers ods si le paquet
odfpy est installé.
Avec ce code :
Pièce jointe 659592
Ami calmant, J.P
Bonsoir JP,
PyCharm m'indique deux avertissements et n'execute pas la commande ?
1. Expected type 'int', got 'str' instead
2. Shadows name 'repertoire' from outer scope
Comment se fait-ce ?
à bientôt !
réponse à JP sur l'erreur 1.
Citation:
Envoyé par
jurassic pork
Hello,
Pour la première erreur il faudrait nous dire où se situe l'erreur et nous montrer toutes tes données Source. Par contre si tu as dans les données de la colonne que tu veux utiliser des données qui ne sont pas des chaînes. Il faut alors forcer le type des données dans le join à str(string) par un map...
Voilà, pour la première erreur, il tique PyCharm tique sur usecols='D' a priori :
Code:
df = pd.read_excel(fic, usecols='D', converters={'Genre': str})
réponse à Fred sur l'erreur de nommage
Citation:
Envoyé par
fred1599
Il y a toujours une erreur...
alors que votre paramètre est nommé afichier_sortie.
Bonjour Fred,
l'erreur retirée, le contenu s'affiche (dans result.ods) toujours en dessous de ligne dans laquelle une celle est remplie, quelque soit sa place dans la ligne.
Bonne journée