[RESOLU]exclure des feuilles de la proriété sheets.count

jopont

XLDnaute Impliqué
Bonjour,

Je cherche dans un test VBA à exclure 4 feuilles de la proriété sheets.count : j'ai

Code:
For t = 1 To Sheets.Count
mais je ne veux pas des feuilles 27, 28, 29, 30 dans le test

Comment faire ?
merci
 
Dernière édition:

jopont

XLDnaute Impliqué
Re : exclure des feuilles de la proriété sheets.count

Oups Où alimentes-tu le combobox dans la macro avec les noms ?
Mes noms, dans le fichier débutent de B4 à B64. Ils sont identique sur toutes les feuilles des mois.
merci
 
C

Compte Supprimé 979

Guest
Re : exclure des feuilles de la proriété sheets.count

Merci Bruno,
J'ai un problème pour Simon dans l'exemple, il me compte GGVVVV, alors qu'il n'y en a pas.
La séquence est bien GGVVVV
merci
Autant pour moi je ne comptais que 3 vides

Ne pourrais tu pas faire un minimum d'effort de compréhension !?

Je pense que mon code est assez explicite et avec assez d'annotations, non ..
Code:
' Si les 2 conditions sont remplies
If NbG = 2 And NbVide = 3 Then
A remplacer par
Code:
' Si les 2 conditions sont remplies
If NbG = 2 And NbVide = 4 Then

A+
 
C

Compte Supprimé 979

Guest
Re : exclure des feuilles de la proriété sheets.count

Lorsque je transpose les macro dans mon fichier original, il me dit que lvwReport n'est pas défini.
Ca tu ne pouvais pas le savoir ... quoique ....
si tu prétais un minimum attention au code ..

J'utilise une ListView
Dans le menu Ouils -> Références, il faut cocher
"Microsoft Windows Common controls 6.0 (SP6)"

A+
 

Pièces jointes

  • ScreenShot062.jpg
    ScreenShot062.jpg
    35.3 KB · Affichages: 106
  • ScreenShot062.jpg
    ScreenShot062.jpg
    35.3 KB · Affichages: 108
  • ScreenShot062.jpg
    ScreenShot062.jpg
    35.3 KB · Affichages: 102
C

Compte Supprimé 979

Guest
Re : exclure des feuilles de la proriété sheets.count

Lorsque je transpose les macro dans mon fichier original, il me dit que lvwReport n'est pas défini.
Comme a l'origine !

Dans la propriété "RowSource" de ta ComboBox tu as "Noms" d'inscrit
Lorsque tu vas dans ta feuille Excel dans le menu -> Insertion -> Nom -> Définir
Le noms est définit avec la formule "=janvier!$B$4:$B$6" à modifier

A+
 

jopont

XLDnaute Impliqué
Re : exclure des feuilles de la proriété sheets.count

Bonjour,

Encore merci beaucoup à toi pour ta patience. ça fonctionne impeccable.
Dans la fonction periodeG si j'écris cela, est-ce que ça me donne le comptage des séries suivantes :

GGVVVV
GGRFRFRFRF
GGVVRFRF
GGRFRFVV

Code:
Do While IsDate(.Cells(1, Rng.Column))
        ' Si la cellule contient "G"
       If Rng.Value = "G" Then
          NbG = NbG + 1
        ElseIf Rng.Value <> "" Or[COLOR=red] Rng.Value <> "RF" [/COLOR]Then
          NbG = 0: NbVide = 0
        End If
        ' Sinon si la cellule est vide
       If Rng.Value = "" Or [COLOR=red]Rng.Value = "RF" [/COLOR]Then
          ' Si le nombre de G est de 2
         If NbG = 2 Then NbVide = NbVide + 1 Else NbG = 0
        End If
        ' Si les 2 conditions sont remplies
       If NbG = 2 And NbVide = 4 Then
          ' On ajoute 1 au compte
         Cpte = Cpte + 1
          NbG = 0: NbVide = 0
        End If
        Set Rng = Rng(1, 2)
      Loop
    End With
  Next
  PeriodeG = Cpte
End Function

merci
 
C

Compte Supprimé 979

Guest
Re : exclure des feuilles de la proriété sheets.count

Une fonction pour chaque série et faire la totalisation dans le userform ?
Oui, si tu souhaites afficher le résultat dans ton USF
Code:
' Exécuter la fonction de calcul
  Result = Periode(TabSht, 4 + LigSel)
  Result = Result + PeriodeG(TabSht, 4 + LigSel)
  Result = Result + PeriodeGGRFRFRFRF(TabSht, 4 + LigSel)
  ' Etc ...
  Me.Label1.Caption = "Le résultat est : " & Result

A+
 

jopont

XLDnaute Impliqué
Re : exclure des feuilles de la proriété sheets.count

re bonsoir,
Ok j'ai compris la variable result sera égale à elle-même plus la nouvelle fonction.

Mais dans la nouvelle fonction, je n'arrive pas par exemple à identifier la série GGRFRFVV :
J'ai également essayé ça mais sans réussite pour la série G/G/RF/RF/RF/RF
Code:
If Rng.Value = "G" Then
          NbG = NbG + 1
        ElseIf Rng.Value <> "" Then
          NbG = 0: NbVide = 0
        End If
        ' Sinon si la cellule est vide
       If Rng.Value = "RF" Then
          ' Si le nombre de G est de 2
         If NbG = 2 Then NbRF = NbRF + 1 Else NbG = 0
        End If
        ' Si les 2 conditions sont remplies
       If NbG = 2 And NbRF = 4 Then
          ' On ajoute 1 au compte
         Cpte = Cpte + 1
          NbG = 0: NbRF = 0
merci
 
C

Compte Supprimé 979

Guest
Re : exclure des feuilles de la proriété sheets.count

Re,

Eeeeetttt oui, là, est toute l'essence même du développement !
trouver les bonnes lignes de code ...

Je pense t'avoir assez accordé assez de temps, je passe le relais a qui voudra bien
 

jopont

XLDnaute Impliqué
Re : exclure des feuilles de la proriété sheets.count

Re bonsoir,

Je pense avoir trouvé pour la série GGRFRFRFRF
Mais je ne vois pas comment pour la période GGRFRFVV.
Code:
Function PeriodeG4RF(TabSht() As String, Optional Lig As Long = 2)
  Dim Ind As Integer, Rng As Range
  Dim Cpte As Integer, NbG As Integer, NbRF As Integer
  ' Initialisation des variables
 Cpte = 0: NbG = 0: NbVide = 0
  ' Application.Volatile  ' En cas de besoin
 ' Pour chaque Item du tableau
 For Ind = 0 To UBound(TabSht)
    ' Avec la feuille du nom du tableau
   With Sheets(TabSht(Ind))
      ' Définir la cellule de départ
     Set Rng = .Range("C" & Lig)
      ' Si la colonne de la ligne 1 est une date
     Do While IsDate(.Cells(1, Rng.Column))
        ' Si la cellule contient "G"
       If Rng.Value = "G" Then
          NbG = NbG + 1
        ElseIf Rng.Value <> "RF" Then
          NbG = 0: NbVide = 0
        End If
        ' Sinon si la cellule est RF
       If Rng.Value = "RF" Then
          ' Si le nombre de G est de 2
         If NbG = 2 Then NbRF = NbRF + 1 Else NbG = 0
        End If
        ' Si les 2 conditions sont remplies
       If NbG = 2 And NbRF = 4 Then
          ' On ajoute 1 au compte
         Cpte = Cpte + 1
          NbG = 0: NbRF = 0
        End If
        Set Rng = Rng(1, 2)
      Loop
    End With
  Next
  PeriodeG4RF = Cpte
End Function
 

jopont

XLDnaute Impliqué
Re : exclure des feuilles de la proriété sheets.count

Re bonsoir,

J'ai essayé cette focntion pour la série GG RF RF Vide Vide, mais elle ne fonctionne pas :

Code:
Function PeriodeG2RF2V(TabSht() As String, Optional Lig As Long = 2)
  Dim Ind As Integer, Rng As Range
  Dim Cpte As Integer, NbG As Integer, NbRF As Integer, NbVide As Integer
  ' Initialisation des variables
 Cpte = 0: NbG = 0: NbRF = 0: NbVide = 0
  ' Application.Volatile  ' En cas de besoin
 ' Pour chaque Item du tableau
 For Ind = 0 To UBound(TabSht)
    ' Avec la feuille du nom du tableau
   With Sheets(TabSht(Ind))
      ' Définir la cellule de départ
     Set Rng = .Range("C" & Lig)
      ' Si la colonne de la ligne 1 est une date
     Do While IsDate(.Cells(1, Rng.Column))
        ' Si la cellule contient "G"
       If Rng.Value = "G" Then
          NbG = NbG + 1
        ElseIf Rng.Value <> "RF" Or Rng.Value <> "" Then
          NbG = 0: NbRF = 0: NbVide = 0
        End If
        ' Sinon si la cellule est RF
       If Rng.Value = "RF" Then
          ' Si le nombre de G est de 2 on alimente avec RF
         If NbG = 2 Then NbRF = NbRF + 1 Else NbG = 0
         End If
        If Rng.Value = "" Then
        If NbG = 2 And NbRF = 2 Then NbVide = NbVide + 1 Else NbG = 0
        End If
         'Si les 2 conditions sont remplies
       If NbG = 2 And NbRF = 2 And NbVide = 2 Then
          ' On ajoute 1 au compte
         Cpte = Cpte + 1
          NbG = 0: NbRF = 0: NbVide = 0
        End If
        Set Rng = Rng(1, 2)
      Loop
    End With
  Next
Merci
 

jopont

XLDnaute Impliqué
Re : exclure des feuilles de la proriété sheets.count

Bonjour,

Je n'arrive pas à développer la fonction pour détecter les GGRFRFVV ou GGVVRFRF.
Je donne le fichier de ce que j'ai fais mais ça ne fonctionne pas. Paul devrait avoir 4 périodes pour le mois de janvier.
merci
 

Pièces jointes

  • arg_tableau.xls
    89 KB · Affichages: 123
  • arg_tableau.xls
    89 KB · Affichages: 125
  • arg_tableau.xls
    89 KB · Affichages: 127

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof