Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


Le 06/09/2013 10:40, abel a écrit :
bizarre, je n'ai pas "scénarios" dans le menu outils, il est grisé...
est-ce normal ?

Abel

Le 06/09/2013 10:29, pierre-yves samyn a écrit :
Bonjour


abel wrote
Dans un document calc composé de plusieurs feuilles, et
je voudrais leur donner un nom qui serait le contenu d'une cellule.

Ce n'est possible que par macro, en tenant compte des restrictions
sur les caractères interdits dans les noms de feuille (plus nombreuses
si le document doit être ouvert avec Excel).

Les "scénarios" (menu Outils) peuvent générer automatiquement des
feuilles nommées "autrement" que la feuille de données mais ceci est
une autre approche. Cette technique est décrite dans le guide utilisateur
Chapitre 9 Analyse des Données
https://wiki.documentfoundation.org/Documentation/Publications/fr#Guide_Calc

Cordialement
Pierre-Yves




--
View this message in context: http://nabble.documentfoundation.org/nom-de-feuille-tp4073239p4073243.html
Sent from the Users mailing list archive at Nabble.com.



Bonjour,

Sans macro difficile à réaliser.
Ci-dessous code d'une macro qui récupère le nom de la feuille dans une cellule et qui crée une feuille portant ce nom.
A adapter.

Sub lien_cellule_nom_feuille
    Dim MonDocument As Object
Dim MaFeuille As Object, LesFeuilles As Object, NouvelleFeuille As Object
    Dim vCompteFeuille As Integer
    Dim vNomFeuilleCellule As Variant
    MonDocument = ThisComponent
    LesFeuilles = MonDocument.Sheets
    vCompteFeuille = LesFeuilles.Count
    ' vers première feuille qui contient en B2 le nom de la feuille
    MaFeuille = LesFeuilles(0)
' recupère le nom à donner à la feuille sous type chaîne ***en feuille 1 cellule B2*******************
    vNomFeuilleCellule = MaFeuille.getCellByPosition(1,1).GetString
' teste si une feuille portant le même nom existe dans la collection Sheets ***
    If LesFeuilles.hasByName(vNomFeuilleCellule) then
        LesFeuilles.RemoveByName(vNomFeuilleCellule)
        MsgBox "Feuille existante Supprimée"
LesFeuilles.insertNewByName(vNomFeuilleCellule,(vCompteFeuille + 1)
        NouvelleFeuille = LesFeuilles.getByName(vNomFeuilleCellule)
    Else
LesFeuilles.insertNewByName(vNomFeuilleCellule,(vCompteFeuille + 1)
        NouvelleFeuille = LesFeuilles.getByName(vNomFeuilleCellule)
    End If
End Sub

Cordialement
Michel B.

--
Michel*BLANCHARD*
/5 rue de Vélantan/
*37130* Mazières de Touraine
--

--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être 
supprimés

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.