IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Compter les feuilles remplissant un critère..


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 79
    Par défaut Compter les feuilles remplissant un critère..
    Bonjour le forum!

    J'aimerais savoir comment faire pour compter les onglets d'un classeur.
    Sachant que je souhaite prendre en compte que les onglets qui ont un nom qui commence par un numéro.

    J'ai quelque petite piste, je pense qu'il va falloir que j'utilise "nb = Worksheets.Count" et surtout je pense qu'il faut utiliser les expression régulière..

    Je vous donne quelque nom d'onglets comme exemple:

    11 - E-2000
    14 - Ramsès PS

    ---> voila les onglets que je veux compter


    Validation
    Facturation March 2010

    ---> et voila ceux que je ne veux pas prendre en compte!

    En vous remerciant pour aide.
    Julien

  2. #2
    Membre éprouvé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Par défaut
    Salut,

    En supposant que les nom de feuilles soient bien tous structurés de la même manière a noter :

    11 - TEXTE
    NUMERO - TEXTE


    Voici ce que tu peux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub CompterSheets()
    Dim PositionTiret, i As Integer
    Dim Compteur As Integer
    Dim Debut As String
    Compteur = 0
    For i = 1 To Sheets.Count 'Pour i = 1 jusquau nombre total de Feuilles.
        PositionTiret = InStr(1, Sheets(i).Name, "-") 'Recherche du tiret
        If PositionTiret > 0 Then ' Si il y a un tiret alors
            Debut = Mid(Sheets(i).Name, 1, PositionTiret - 1) 'On Coupe le nom de la feuille avant le tiret pour n'avoir que le numéro
            If IsNumeric(Debut) Then ' si ce qui est avant le tiret est numérique alors
                Compteur = Compteur + 1 'On incrémente le compteur !
            End If
        End If
    Next i
    MsgBox "Nombre de feuille commençant par un nombre = " & CStr(i)
    End Sub
    Voila !

  3. #3
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    bonjour

    comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    function compter_feuille_avec_chiffre_dans_le_nom_mais_on_peux_faire_plus_court_comme_nom_de_fonction() as interger
    dim Sh as worksheet
    dim I as integer
     
    for each sh in thisworkbook.worksheets
        if isnumeric(left(sh.name,1)) then i=i+1
    next sh
     
    compter_feuille_avec_chiffre_dans_le_nom_mais_on_peux_faire_plus_court_comme_nom_de_fonction=i
     
    end function

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 79
    Par défaut
    Merci beaucoup cela fonctionne parfaitement!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Compter les occurrences sur deux critères
    Par guigui69 dans le forum Excel
    Réponses: 8
    Dernier message: 13/08/2011, 09h20
  2. [XL-2003] Compter les occurences sur plusieurs feuilles
    Par docjo dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 07/10/2010, 07h55
  3. copier les lignes ayant un critère vers des feuilles cibles
    Par arctica dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 30/09/2009, 13h48
  4. Compter les occurrences d'une chaîne dans une feuille
    Par Daejung dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/11/2008, 08h59
  5. [VBA]Compter les enregistrement suivant critère d'un champs
    Par wachoo31 dans le forum VBA Access
    Réponses: 9
    Dernier message: 27/04/2007, 07h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo