[Résolu][Calc] Sommaire à partir des feuilles du classeur

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 !
PierrePoisson
Fraîchement OOthentifié
Messages : 1
Inscription : 31 mars 2016 06:58

[Résolu][Calc] Sommaire à partir des feuilles du classeur

Message par PierrePoisson »

Bonjour,

j'aurais besoin de créer un sommaire de façon automatique à partir des noms des feuilles d'un fichier Calc.

Ces noms devraient être liés via des hiperliens à la feuille correspondant.

Merci d'avance
Dernière modification par PierrePoisson le 01 avr. 2016 14:34, modifié 1 fois.
OpenOffice 4.1.2 sur Windows 7 Entreprise
Avatar de l’utilisateur
Bidouille
RespOOnsable forum
RespOOnsable forum
Messages : 12684
Inscription : 08 nov. 2005 16:23
Localisation : Brest, France

Re: Sommaire a partir des feuilles du fichier

Message par Bidouille »

Cette section a des règles très précises que vous devez obligatoirement suivre pour obtenir de l'aide. C'est indiqué dans le cadre rouge en haut de la page.

Il est demandé aux auteurs de faire précéder le titre de leur question d'une balise adéquate. Ce balisage est extrêmement important car il permet d'avoir une base de connaissance optimum en cas de recherche. Avez-vous remarqué comment étaient les autres questions postées ?

Lisez ce fil pour savoir quelle balise utiliser : http://forum.openoffice.org/fr/forum/su ... html#27295

Nous l'avons fait pour vous cette fois-ci mais lors de votre prochaine question, nous vous remercions de le faire vous-même sous peine de voir votre sujet verrouillé.
bm92
ManitOOu
ManitOOu
Messages : 2562
Inscription : 26 nov. 2005 13:42

Re: Sommaire a partir des feuilles du fichier

Message par bm92 »

Salut,
PierrePoisson a écrit :j'aurais besoin de créer un sommaire de façon automatique à partir des noms des feuilles d'un fichier Calc.
Ces noms devraient être liés via des hiperliens à la feuille correspondant.
Déjà fait : les onglets du tableur répondent exactement à cette définition.
Bernard

OpenOffice.org 1.1.5 fr / Apache OpenOffice 4.1.1 / LibreOffice 5.0.5.2 (X64)
MS-Windows 7 SP1 64bits Familial
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26009
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Calc] Sommaire a partir des feuilles du fichier

Message par Dude »

Salut,
bm92 a écrit :Déjà fait : les onglets du tableur répondent exactement à cette définition.
+1
Autre sommaire disponible depuis la barre latérale avec le navigateur :
_no_problemo.png
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
zeguedon
ManitOOu
ManitOOu
Messages : 3031
Inscription : 02 juil. 2014 17:25

Re: [Calc] Sommaire a partir des feuilles du fichier

Message par zeguedon »

Bonjour,

Dans le fichier joint une petite fonction qui crée un sommaire (sous la cellule active) avec hyperlien vers toutes les feuilles du classeur.
Sous AOO : menu Outils>Macros>Exécuter la macro puis choisir le classeur dans la liste et sélectionner la macro nommée "Sommaire".
Sous LO, saisir directement dans une cellule :

Code : Tout sélectionner

=SOMMAIRE()
Le sommaire sera créé en dessous

Code : Tout sélectionner

Option Explicit
Function sommaire()As String
Dim oDoc As Object ,maFeuille As Object ,feuil As String ,feuilles As Object
Dim maCellule As Object , cell As Object ,curseur As Object ,hpl As Object
Dim i As Long
oDoc = Thiscomponent
feuilles = oDoc.Sheets
maFeuille = oDoc.CurrentController.ActiveSheet
maCellule = oDoc.CurrentSelection
If maCellule.supportsService("com.sun.star.table.Cell") then
	For i = 0 To feuilles.count-1
		cell = maFeuille.GetCellByPosition(maCellule.RangeAddress.StartColumn ,maCellule.RangeAddress.StartRow +(i+1))
 		feuil = feuilles(i).Name
 		hpl = oDoc.createInstance("com.sun.star.text.TextField.URL")
 		hpl.url = "#" & feuil & ".A1"
 		hpl.Representation = feuil
 		curseur = cell.createTextCursor
 		curseur.gotoEnd(false)
 		cell.insertTextContent(curseur ,hpl ,false)
 	Next i
End If
sommaire() = "Sommaire"
maCellule.String = "Sommaire"
End Function
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Comment baliser [Résolu] ?
AOO
LibreOffice
Sous Linux