XL 2013 Créer Sommaire

YANOU38

XLDnaute Occasionnel
Bonjour,
Sur le Fichier joint, en O17 je veux récupérer automatiquement le numéro de la première feuille avec un nombre (ma première feuille chiffrée peut très bien être la numéro 8 par exemple)
Pour cela je liste automatiquement tous les noms des Feuilles (à partir de la cellule AR1).
A partir de la cellule AS1 je "tente" de cibler la première valeur numérique rencontrée, mais on peut voir qu'en cellule AS3 cela ne fonctionne pas...(prise en compte formule et pas valeur je pense...).
Je suis parti dans ce cheminement, mais il y a peut-être plus simple pour créer mon sommaire (?)
L'idée est qu'en cellule O17, j'ai automatiquement "3" (le premier chiffre rencontré dans le nom de mes feuilles)
Merci pour votre aide.
 

Pièces jointes

  • Essai.xlsm
    156.5 KB · Affichages: 36

YANOU38

XLDnaute Occasionnel
Plus simplement :
Ma cellule AR3, qui contient un calcul du type =SI(...) me donne "3".
Je test si cette cellule est du type numérique par =ESTNUM(AR3) est cela me renvoi FAUX.
Je pense que ceci est dû au fait que ESTNUM prend en compte la formule et pas le résultat "3"
Merci pour votre aide
 
Bonjour yanou38, le forum

Ma foi, si il s'agit de créer un sommaire, l'utilitaire Xld-Navigator de l'ami _Thierry pour naviguer dans les classeurs volumineux pourra peut être te convenir.
Je l'ai intégré à ton fichier.
Sinon il suffit d'ouvrir l'utilitaire et de lancer l'installation pour créer la feuille de sommaire dans un fichier.

Bien cordialement, @+
 

Pièces jointes

  • ESSAI-1 (2).xlsm
    182.2 KB · Affichages: 21
  • XLD-Install-NavigatorX-V02.00.xlsm
    57.7 KB · Affichages: 22

YANOU38

XLDnaute Occasionnel
Bonjour Yeahou, le forum
Merci pour ton aide.
J'ai essayé NavigatorX avec une multitude de feuilles et il est clair que cela peut être d'une aide précieuse, je ne connaissais pas.
Mes classeurs comportent, quant à eux, rarement plus de 25 feuilles.
La "navigation" dans le classeur reste, de ce fait, assez simple.
Il me semble ne pas être loin de la solution avec le =ESTNUM...
Merci.
 

job75

XLDnaute Barbatruc
Bonjour YANOU38,

Voyez le fichier joint et le code de la feuille "PG" :
VB:
Private Sub Worksheet_Activate()
Dim a(), n%
With [O17]
    If Sheets.Count > 2 Then
        ReDim a(1 To Sheets.Count - 2, 1 To 3)
        For n = 1 To UBound(a)
            a(n, 1) = Sheets(n + 2).Name
        Next
        n = n - 1
        With .Resize(n, 3)
            .Value = a
            .BorderAround Weight:=xlThin 'pourtour
            .HorizontalAlignment = xlCenterAcrossSelection
        End With
    End If
    .Offset(n).Resize(32 - n, 3).Clear 'RAZ en dessous
End With
End Sub
La macro se déclenche quand on active la feuille.

Edit : bonjour Yeahou, comme d'hab la page XLD n'était pas à jour...

A+
 

Pièces jointes

  • Essai(1).xlsm
    143 KB · Affichages: 22
Dernière édition:

YANOU38

XLDnaute Occasionnel
Bonjour Job75,
Je tentais d'esquiver les Macros car je ne maîtrise pas...mais c'est peut-être la solution.
Il y a cependant d'autres "automatismes" à mettre en place, je ne sais pas si je peux me permettre de vous prendre plus de temps...
Si cela est possible, il faut que je liste tout pour ne rien oublier et ne pas y revenir 10 fois.
Merci encore pour votre aide.
 

jcf6464

XLDnaute Occasionnel
Bonjour yanou38, le forum

Ma foi, si il s'agit de créer un sommaire, l'utilitaire Xld-Navigator de l'ami _Thierry pour naviguer dans les classeurs volumineux pourra peut être te convenir.
Je l'ai intégré à ton fichier.
Sinon il suffit d'ouvrir l'utilitaire et de lancer l'installation pour créer la feuille de sommaire dans un fichier.

Bien cordialement, @+
Bonjour Yeahou vous tous et le forum
Le navigateur est excellent le lien ( http://www.excel-downloads.com/html/French/forum/messages/1_105975_105975.htm) ne fonctionne pas surement le sujet effacé,

bonne continuation
jean claude
 
Bonjour le fil, forum
Le navigateur est excellent le lien ( http://www.excel-downloads.com/html/French/forum/messages/1_105975_105975.htm) ne fonctionne pas surement le sujet effacé,
normal, c'est sur le premier forum Xld d'avant celui de 2005, les liens originels ne fonctionnent plus. Mais quand on sait ou chercher, voici le lien avec le fil d'origine.
J'ai simplement converti le fichier de _Thierry en Xlsm
https://www.excel-downloads.com/thr...s-les-classeurs-volumnineux.23094/post-105774

[édition : Attention, la version 2.0 est dans le post #55 ]

Bien cordialement, @+
 
Dernière édition:
alors si on revenait à l'ancien forum d'avant celui de 2005 ?
il faut se méfier du syndrome du bon vieux temps, l'ancien forum était beaucoup moins bien fait que celui ci. Pas de mail, pas de notification, pas de conversation, profils simplissimes, l'antiquité quoi !
et tu avais sorti ma phrase de son contexte, je disais qu'il était normal que les liens ne fonctionnent pas
 
Dernière édition:

YANOU38

XLDnaute Occasionnel
Bonjour à tous,
En PJ un classeur où j'ai tenté de résumer le plus clairement possible les idées d'automatismes (sur la feuille Récapitulatif).
Merci encore pour votre aide.
 

Pièces jointes

  • 16004-Essai.xlsm
    268.5 KB · Affichages: 22

YANOU38

XLDnaute Occasionnel
Bonjour à tous,
- Une macro (Feuille "Récapitulatif" bouton "Nom Feuilles") me permet de récupérer le nom de toutes mes feuilles.
- Je récupère (Feuille "Récapitulatif" cellule W15) le premier chiffre rencontré dans la colonne S.

Par contre, si je rajoute une feuille, par exemple un copier/coller de la feuille 20, ce qui me donne une feuille 20(2), que je relance la macro, je récupère bien la feuille 20 (2) dans ma liste, mais si je supprime cette feuille et que je relance la macro, cette feuille 20(2) et toujours là dans ma liste (?)

Merci pour votre aide
 

Pièces jointes

  • 16004-Essai.xlsm
    301.3 KB · Affichages: 18

job75

XLDnaute Barbatruc
Bonjour YANOU38, le forum,

Avec vos desiderata du post #12 vous avez fait fuir tout le monde.

Maintenant pour créer la liste des feuilles en S9 :
VB:
Sub Snamelist()
Dim a(), n%
ReDim a(1 To Sheets.Count, 1 To 1)
For n = 1 To UBound(a)
    a(n, 1) = Sheets(n).Name
Next
n = n - 1
With [S9]
    .Resize(n) = a
    .Offset(n).Resize(Rows.Count - n - .Row + 1).ClearContents 'RAZ en dessous
End With
End Sub
Pour trouver la 1ère valeur numérique 6 les colonnes U et V sont inutiles, utilisez cette formule matricielle :
Code:
=INDEX(S9:S10000;EQUIV(VRAI;ESTNUM(S9:S10000);0))
à valider par Ctrl+Maj+Entrée.

A+
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 949
Membres
101 851
dernier inscrit
vaiata