Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.
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 !
Bonjour,
J'ai un problème avec le code ci-dessous; il n'enregistre que 2 feuilles alors que mon classeur en compte 22 et je ne trouve pas l'erreur ou l'omission.
sub Enregistrer_Sous
GlobalScope.BasicLibraries.LoadLibrary("Tools")
Dim MonDoc as Object, MaFeuille as Object
Dim LeDossier as String, Nom as String, Url as String, MonFichier as String, Fichier As String
MonDoc = ThisComponent
'- - - Si le fichier a été modifié on enregistre- - -
If MonDoc.IsModified Then
MonDoc.Store
msgbox "Le fichier sera enregistré pour inclure les dernières modifications avant de poursuivre cette macro"
EndIf
'- - - Récupère l'adresse du fichier- - -
sURL =MonDoc.URL
sRep = DirectoryNameOutOfPath(sURL, "/")
sSousRep = sRep & "/Recettes"
'- - - si le répertoire n'existe pas, on le crée- - -
If Dir(sSousRep,16) = "" Then
MkDir sSousRep
End If
MonDoc = ThisComponent
MaFeuille= MonDoc.CurrentController.ActiveSheet
MaRecette = maFeuille.getCellRangeByName("A1").getString
Fichier = Left (ThisComponent.URL, Len(ThisComponent.URL) -4) & "/Recettes/" & MaRecette &" - le " & Format (Now, "DD-MM-YYYY-HH-MM" ) & ".ods"
'- - - Soit on enregistre et travaille sous le nouveau fichier- - -
'- - - monDoc.storeAsUrl(Url, Array())- - -
'-----Soit on enregistre et continue à travailler sur le fichier source- - -
ThisComponent.storeToUrl(Fichier, Array())
msgbox " Le fichier de sauvegarde de la recette .ods a été créé avec succès"
End Sub
Dernière modification par Grande Ourse le 03 févr. 2026 01:04, modifié 5 fois.
Afin de garder la qualité de ce forum optimum, je vous prierais de :
rectifier votre message pour que la partie code soit distincte. C'est illisible.
mettre un titre en rapport avec le problème exposé : [Calc] Il manque des feuilles suite à Enregistrer sous
joindre un classeur au format ODS intégrant la macro afin de permettre d'aider ceux qui vous répondent
Merci
Dernier point : quand vous postez la même question sur un autre forum, il est d'usage de l'indiquer. Cela évite la dispersion de l'effort. https://www.developpez.net/forums/d2180915/logiciels/logiciels-libres-open-source/bureautique/openoffice-libreoffice/macro-enregistrer-sous/