[Résolu][Calc] Exporter en ods certains onglets avec nommage automatique ?

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: 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 !
parlapresente
Membre OOrganisé
Membre OOrganisé
Messages : 62
Inscription : 17 janv. 2020 19:39

[Résolu][Calc] Exporter en ods certains onglets avec nommage automatique ?

Message par parlapresente »

Bonjour,

J'ai un fichier Calc avec plusieurs onglets dont les noms sont visibles également sur un onglet de type synthèse.
Dans mon exemple, il s'agit de boutique d'exports, situées dans des pays différents, avec des zones là aussi différentes.

Les boutiques Toto et Titi, appartiennent à la zone A2, la boutique Tata appartient à la Zone A1.
Est-ce possible, via une macro, d'exporter 2 fichiers calc (dans mon exemple mais ça pourrait être plus, évidemment) avec :
Fichier 1 : A1.ods, contenant les feuilles Tata_F uniquement
Fichier 2 : A2.ods contenant les feuilles Toto_J et Titi_C

Si vous avez une piste ?
UP : avec l'extension zbasic, je sais qu'il est possible mais uniquement pour un seul onglet ...

Merci
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par parlapresente le 06 déc. 2024 07:01, modifié 2 fois.
LIbreoffice 24.2.1
Windows 11
Avatar de l’utilisateur
Dolev
SuppOOrter
SuppOOrter
Messages : 1195
Inscription : 19 août 2018 05:20

Re: [Calc] Exporter certains onglets avec nommage automatique ?

Message par Dolev »

Bonjour,

Avez-vous consulté le suprême de code sur les copies de feuille entre classeurs ?
viewtopic.php?f=15&t=6371

Je pense que toutes les pistes sont là. :)
Open Office 4.1.16 sous Windows 11
lecoinbon86
Membre lOOyal
Membre lOOyal
Messages : 40
Inscription : 01 avr. 2020 07:04

Re: [Calc] Exporter certains onglets avec nommage automatique ?

Message par lecoinbon86 »

Merci je vais regarder, mais ça ne serait pas plus simple avec zbasic ?

UP : ça n'a pas l'air terrible pour mon cas en fait.

ok
Dernière modification par lecoinbon86 le 03 déc. 2024 19:27, modifié 2 fois.
Version: 24.2.1.2 (X86_64) / LibreOffice Community
Windows 11
Avatar de l’utilisateur
Dolev
SuppOOrter
SuppOOrter
Messages : 1195
Inscription : 19 août 2018 05:20

Re: [Calc] Exporter certains onglets avec nommage automatique ?

Message par Dolev »

lecoinbon86 a écrit : 03 déc. 2024 19:20 Merci je vais regarder, mais ça ne serait pas plus simple avec zbasic ?

UP : ça n'a pas l'air terrible pour mon cas en fait.
La réponse ne s'adresse pas à vous mais à parlapresente. Si vous avez un problème même identique, vous devez ouvrir un nouveau fil.
Open Office 4.1.16 sous Windows 11
parlapresente
Membre OOrganisé
Membre OOrganisé
Messages : 62
Inscription : 17 janv. 2020 19:39

Re: [Calc] Exporter certains onglets avec nommage automatique ?

Message par parlapresente »

ça ne risque pas de prendre beaucoup de temps s'il y a beaucoup d'onglets à copier du coup ?

Merci pour l'aide !

Bon j'ai regardé et je pensais passer par une macro plus "souple" (je ne sais pas si c'est le bon terme en fait).
Ma liste de Toto, tata, Titi de l'onglet principal indiquant la zone, je pensais que grâce à ça, ça m'aurait permis justement de dire quels onglets exporter.
LIbreoffice 24.2.1
Windows 11
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26205
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Calc] Exporter en ods certains onglets avec nommage automatique ?

Message par Dude »

Salut,

Récupérer la plage, parcourir chaque ligne pour déterminer l'export de la feuille et du classeur.
Cela donne :

Code : Tout sélectionner

Sub Main
	Globalscope.BasicLibraries.LoadLibrary( "zBasic" )
	
	sRep = "C:\ExportODS\" 'le répertoire où exporter
	aListe = zPlage.VersTable("A2:C4", "Feuille1")
	for each aLigne in aListe
		sFeuille = aLigne(0) & "_" & aLigne(1)
		sClasseur = aLigne(2)
		wait 500 'petite pause avant chaque export
		zFeuille.Exporte(sRep & sClasseur & ".ods", sFeuille)
	next
End Sub
parlapresente
Membre OOrganisé
Membre OOrganisé
Messages : 62
Inscription : 17 janv. 2020 19:39

Re: [Calc] Exporter en ods certains onglets avec nommage automatique ?

Message par parlapresente »

Merci Dude, je m'en vais tester cela.

ça fonctionne effectivement, merci Dude.
LIbreoffice 24.2.1
Windows 11