Bonsoir, A l'activation des feuilles Les cellules A1 et B1 des feuilles NON fusionnées Voir Ici http://cjoint.com/?kgw6scFyzk -- Salutations JJ
"Magic-DD" a écrit dans le message de news: %23lV1G5%
bonjour
j'ai dans une feuille avec le resultat de plusieurs saisie de fiches d'inscription depuis un userform
dans ces inscriptions j'ai la possibilite de mettre 5 activites differentes ( sportives ou culturelles)
comment faire un recapitulatif des inscrits par types d'activite
je vous donne un exemple dans le fichier suivant
http://cjoint.com/?keutQ7Fboo
merci
LSteph
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par rapport à la base mais bon dans la même idée que toi Jacky cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object) Dim i As Long If Sh.CodeName <> "Feuil1" Then Application.ScreenUpdating = False [a2:b65536].ClearContents
With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase([B1]) Then [a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) [b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next End With End If End Sub
@+
-- lSteph
Bonsoir, A l'activation des feuilles Les cellules A1 et B1 des feuilles NON fusionnées Voir Ici http://cjoint.com/?kgw6scFyzk
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose
par rapport à la base mais bon dans la même idée que toi Jacky
cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents
With [Sport]
For i = 1 To .Count
If UCase(.Cells(i)) = UCase([B1]) Then
[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1)
[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2)
End If
Next
End With
End If
End Sub
@+
--
lSteph
Bonsoir,
A l'activation des feuilles
Les cellules A1 et B1 des feuilles NON fusionnées
Voir Ici
http://cjoint.com/?kgw6scFyzk
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par rapport à la base mais bon dans la même idée que toi Jacky cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object) Dim i As Long If Sh.CodeName <> "Feuil1" Then Application.ScreenUpdating = False [a2:b65536].ClearContents
With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase([B1]) Then [a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) [b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next End With End If End Sub
@+
-- lSteph
Bonsoir, A l'activation des feuilles Les cellules A1 et B1 des feuilles NON fusionnées Voir Ici http://cjoint.com/?kgw6scFyzk
LSteph
Bonsoir,
Attention toutes les autres feuilles seront détruites et recréées
http://cjoint.com/?khbKsUFcQK
ceci suppose que l'on utilise Feuil1 comme .Codename de la feuille dont le nom d'onglet Name est "BDD" , comme dans ton exemple.
Sub MajRapports()
Dim i As Long, sh As Worksheet, c As Range, myst As String Application.ScreenUpdating = False Application.DisplayAlerts = False For Each sh In ActiveWorkbook.Sheets 'on peut en exclure d'autres If sh.CodeName <> "Feuil1" Then sh.Delete Next sh Application.DisplayAlerts = True For Each c In [Sport].Cells myst = "" If c.Column Mod 2 > 0 And Not IsEmpty(c) Then On Error Resume Next myst = Worksheets(UCase(c)).Name On Error GoTo 0
If Len(myst) = 0 Then Sheets.Add after:=Sheets(Sheets.Count) With ActiveSheet .Name = UCase(c) .[a1] = "Recapitulatif" .[B1] = c .[a1:b1].Interior.ColorIndex = 44 End With End If End If Next c
For Each sh In ActiveWorkbook.Sheets If sh.CodeName <> "Feuil1" Then With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase(sh.[B1]) Then sh.[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) sh.[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next i End With End If Next sh
End Sub
'lSteph
bonjour
j'ai dans une feuille avec le resultat de plusieurs saisie de fiches d'inscription depuis un userform
dans ces inscriptions j'ai la possibilite de mettre 5 activites differentes ( sportives ou culturelles)
comment faire un recapitulatif des inscrits par types d'activite
je vous donne un exemple dans le fichier suivant
http://cjoint.com/?keutQ7Fboo
merci
Bonsoir,
Attention toutes les autres feuilles seront détruites et recréées
http://cjoint.com/?khbKsUFcQK
ceci suppose que l'on utilise Feuil1 comme .Codename de la feuille dont
le nom d'onglet Name est "BDD" , comme dans ton exemple.
Sub MajRapports()
Dim i As Long, sh As Worksheet, c As Range, myst As String
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each sh In ActiveWorkbook.Sheets
'on peut en exclure d'autres
If sh.CodeName <> "Feuil1" Then sh.Delete
Next sh
Application.DisplayAlerts = True
For Each c In [Sport].Cells
myst = ""
If c.Column Mod 2 > 0 And Not IsEmpty(c) Then
On Error Resume Next
myst = Worksheets(UCase(c)).Name
On Error GoTo 0
If Len(myst) = 0 Then
Sheets.Add after:=Sheets(Sheets.Count)
With ActiveSheet
.Name = UCase(c)
.[a1] = "Recapitulatif"
.[B1] = c
.[a1:b1].Interior.ColorIndex = 44
End With
End If
End If
Next c
For Each sh In ActiveWorkbook.Sheets
If sh.CodeName <> "Feuil1" Then
With [Sport]
For i = 1 To .Count
If UCase(.Cells(i)) = UCase(sh.[B1]) Then
sh.[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1)
sh.[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2)
End If
Next i
End With
End If
Next sh
End Sub
'lSteph
bonjour
j'ai dans une feuille avec le resultat de plusieurs saisie de fiches
d'inscription depuis un userform
dans ces inscriptions j'ai la possibilite de mettre 5 activites differentes
( sportives ou culturelles)
comment faire un recapitulatif des inscrits par types d'activite
Attention toutes les autres feuilles seront détruites et recréées
http://cjoint.com/?khbKsUFcQK
ceci suppose que l'on utilise Feuil1 comme .Codename de la feuille dont le nom d'onglet Name est "BDD" , comme dans ton exemple.
Sub MajRapports()
Dim i As Long, sh As Worksheet, c As Range, myst As String Application.ScreenUpdating = False Application.DisplayAlerts = False For Each sh In ActiveWorkbook.Sheets 'on peut en exclure d'autres If sh.CodeName <> "Feuil1" Then sh.Delete Next sh Application.DisplayAlerts = True For Each c In [Sport].Cells myst = "" If c.Column Mod 2 > 0 And Not IsEmpty(c) Then On Error Resume Next myst = Worksheets(UCase(c)).Name On Error GoTo 0
If Len(myst) = 0 Then Sheets.Add after:=Sheets(Sheets.Count) With ActiveSheet .Name = UCase(c) .[a1] = "Recapitulatif" .[B1] = c .[a1:b1].Interior.ColorIndex = 44 End With End If End If Next c
For Each sh In ActiveWorkbook.Sheets If sh.CodeName <> "Feuil1" Then With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase(sh.[B1]) Then sh.[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) sh.[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next i End With End If Next sh
End Sub
'lSteph
bonjour
j'ai dans une feuille avec le resultat de plusieurs saisie de fiches d'inscription depuis un userform
dans ces inscriptions j'ai la possibilite de mettre 5 activites differentes ( sportives ou culturelles)
comment faire un recapitulatif des inscrits par types d'activite
je vous donne un exemple dans le fichier suivant
http://cjoint.com/?keutQ7Fboo
merci
Jacky
Re... J'ai trouvé... Private Sub Workbook_SheetActivate(ByVal Sh As Object) Ne tient pas compte des plages discontinues tandis qu'avec Private Sub Worksheet_Activate() Cela fonctionne Bizarre tout de même.
JJ
"LSteph" a écrit dans le message de news:
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par rapport à la base mais bon dans la même idée que toi Jacky cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object) Dim i As Long If Sh.CodeName <> "Feuil1" Then Application.ScreenUpdating = False [a2:b65536].ClearContents
With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase([B1]) Then [a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) [b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next End With End If End Sub
@+
-- lSteph
Bonsoir, A l'activation des feuilles Les cellules A1 et B1 des feuilles NON fusionnées Voir Ici http://cjoint.com/?kgw6scFyzk
Re...
J'ai trouvé...
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne
Bizarre tout de même.
JJ
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
uAjbLpGCIHA.4176@TK2MSFTNGP06.phx.gbl...
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par
rapport à la base mais bon dans la même idée que toi Jacky
cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents
With [Sport]
For i = 1 To .Count
If UCase(.Cells(i)) = UCase([B1]) Then
[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1)
[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2)
End If
Next
End With
End If
End Sub
@+
--
lSteph
Bonsoir,
A l'activation des feuilles
Les cellules A1 et B1 des feuilles NON fusionnées
Voir Ici
http://cjoint.com/?kgw6scFyzk
Re... J'ai trouvé... Private Sub Workbook_SheetActivate(ByVal Sh As Object) Ne tient pas compte des plages discontinues tandis qu'avec Private Sub Worksheet_Activate() Cela fonctionne Bizarre tout de même.
JJ
"LSteph" a écrit dans le message de news:
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par rapport à la base mais bon dans la même idée que toi Jacky cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object) Dim i As Long If Sh.CodeName <> "Feuil1" Then Application.ScreenUpdating = False [a2:b65536].ClearContents
With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase([B1]) Then [a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) [b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next End With End If End Sub
@+
-- lSteph
Bonsoir, A l'activation des feuilles Les cellules A1 et B1 des feuilles NON fusionnées Voir Ici http://cjoint.com/?kgw6scFyzk
Jacky
Ouppsssss!! ;o)) Désolé, une erreur de manip, et un des message et parti dans ta bal perso.(fictive) copie '-------- Bonjour Stéphane
Je ne sais pas pourquoi. Mais chez moi..... Dans les feuilles, ton code ne prend en compte que la première colonne de la plage [Sport] (les 5 premier) Alors que Msgbox .count retourne bien 25 Comprend pas... As-tu une explication ??
Bonne nuit JJ '-----------------
-- Salutations JJ
"LSteph" a écrit dans le message de news:
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par rapport à la base mais bon dans la même idée que toi Jacky cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object) Dim i As Long If Sh.CodeName <> "Feuil1" Then Application.ScreenUpdating = False [a2:b65536].ClearContents
With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase([B1]) Then [a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) [b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next End With End If End Sub
@+
-- lSteph
Bonsoir, A l'activation des feuilles Les cellules A1 et B1 des feuilles NON fusionnées Voir Ici http://cjoint.com/?kgw6scFyzk
Ouppsssss!! ;o))
Désolé, une erreur de manip, et un des message et parti dans ta bal
perso.(fictive)
copie
'--------
Bonjour Stéphane
Je ne sais pas pourquoi. Mais chez moi.....
Dans les feuilles, ton code ne prend en compte que la première colonne de
la plage [Sport] (les 5 premier)
Alors que Msgbox .count retourne bien 25
Comprend pas...
As-tu une explication ??
Bonne nuit
JJ
'-----------------
--
Salutations
JJ
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
uAjbLpGCIHA.4176@TK2MSFTNGP06.phx.gbl...
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par
rapport à la base mais bon dans la même idée que toi Jacky
cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents
With [Sport]
For i = 1 To .Count
If UCase(.Cells(i)) = UCase([B1]) Then
[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1)
[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2)
End If
Next
End With
End If
End Sub
@+
--
lSteph
Bonsoir,
A l'activation des feuilles
Les cellules A1 et B1 des feuilles NON fusionnées
Voir Ici
http://cjoint.com/?kgw6scFyzk
Ouppsssss!! ;o)) Désolé, une erreur de manip, et un des message et parti dans ta bal perso.(fictive) copie '-------- Bonjour Stéphane
Je ne sais pas pourquoi. Mais chez moi..... Dans les feuilles, ton code ne prend en compte que la première colonne de la plage [Sport] (les 5 premier) Alors que Msgbox .count retourne bien 25 Comprend pas... As-tu une explication ??
Bonne nuit JJ '-----------------
-- Salutations JJ
"LSteph" a écrit dans le message de news:
Bonsoir Magic et Jacky, &...,
Cela oblige d'activer qd même chaque feuille pour qu'elle se recompose par rapport à la base mais bon dans la même idée que toi Jacky cet évennement irait pas mal dans le thisworkbook d'ailleurs......
Private Sub Workbook_SheetActivate(ByVal Sh As Object) Dim i As Long If Sh.CodeName <> "Feuil1" Then Application.ScreenUpdating = False [a2:b65536].ClearContents
With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase([B1]) Then [a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) [b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next End With End If End Sub
@+
-- lSteph
Bonsoir, A l'activation des feuilles Les cellules A1 et B1 des feuilles NON fusionnées Voir Ici http://cjoint.com/?kgw6scFyzk
Magic-DD
alors la chapeau Lsteph et jacky sans oublier DouDou
moi je dis y'a des betes et des bebetes
et la j'ai des super bete d'excel
merci encore
@u plaisir
"LSteph" a écrit dans le message de news:%23%23$
Bonsoir,
Attention toutes les autres feuilles seront détruites et recréées
http://cjoint.com/?khbKsUFcQK
ceci suppose que l'on utilise Feuil1 comme .Codename de la feuille dont le nom d'onglet Name est "BDD" , comme dans ton exemple.
Sub MajRapports()
Dim i As Long, sh As Worksheet, c As Range, myst As String Application.ScreenUpdating = False Application.DisplayAlerts = False For Each sh In ActiveWorkbook.Sheets 'on peut en exclure d'autres If sh.CodeName <> "Feuil1" Then sh.Delete Next sh Application.DisplayAlerts = True For Each c In [Sport].Cells myst = "" If c.Column Mod 2 > 0 And Not IsEmpty(c) Then On Error Resume Next myst = Worksheets(UCase(c)).Name On Error GoTo 0
If Len(myst) = 0 Then Sheets.Add after:=Sheets(Sheets.Count) With ActiveSheet .Name = UCase(c) .[a1] = "Recapitulatif" .[B1] = c .[a1:b1].Interior.ColorIndex = 44 End With End If End If Next c
For Each sh In ActiveWorkbook.Sheets If sh.CodeName <> "Feuil1" Then With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase(sh.[B1]) Then sh.[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) sh.[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next i End With End If Next sh
End Sub
'lSteph
bonjour
j'ai dans une feuille avec le resultat de plusieurs saisie de fiches d'inscription depuis un userform
dans ces inscriptions j'ai la possibilite de mettre 5 activites differentes ( sportives ou culturelles)
comment faire un recapitulatif des inscrits par types d'activite
je vous donne un exemple dans le fichier suivant
http://cjoint.com/?keutQ7Fboo
merci
alors la chapeau Lsteph et jacky sans oublier DouDou
moi je dis y'a des betes et des bebetes
et la j'ai des super bete d'excel
merci encore
@u plaisir
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de
news:%23%23$pXHHCIHA.4568@TK2MSFTNGP02.phx.gbl...
Bonsoir,
Attention toutes les autres feuilles seront détruites et recréées
http://cjoint.com/?khbKsUFcQK
ceci suppose que l'on utilise Feuil1 comme .Codename de la feuille dont
le nom d'onglet Name est "BDD" , comme dans ton exemple.
Sub MajRapports()
Dim i As Long, sh As Worksheet, c As Range, myst As String
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each sh In ActiveWorkbook.Sheets
'on peut en exclure d'autres
If sh.CodeName <> "Feuil1" Then sh.Delete
Next sh
Application.DisplayAlerts = True
For Each c In [Sport].Cells
myst = ""
If c.Column Mod 2 > 0 And Not IsEmpty(c) Then
On Error Resume Next
myst = Worksheets(UCase(c)).Name
On Error GoTo 0
If Len(myst) = 0 Then
Sheets.Add after:=Sheets(Sheets.Count)
With ActiveSheet
.Name = UCase(c)
.[a1] = "Recapitulatif"
.[B1] = c
.[a1:b1].Interior.ColorIndex = 44
End With
End If
End If
Next c
For Each sh In ActiveWorkbook.Sheets
If sh.CodeName <> "Feuil1" Then
With [Sport]
For i = 1 To .Count
If UCase(.Cells(i)) = UCase(sh.[B1]) Then
sh.[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1)
sh.[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2)
End If
Next i
End With
End If
Next sh
End Sub
'lSteph
bonjour
j'ai dans une feuille avec le resultat de plusieurs saisie de fiches
d'inscription depuis un userform
dans ces inscriptions j'ai la possibilite de mettre 5 activites
differentes
( sportives ou culturelles)
comment faire un recapitulatif des inscrits par types d'activite
alors la chapeau Lsteph et jacky sans oublier DouDou
moi je dis y'a des betes et des bebetes
et la j'ai des super bete d'excel
merci encore
@u plaisir
"LSteph" a écrit dans le message de news:%23%23$
Bonsoir,
Attention toutes les autres feuilles seront détruites et recréées
http://cjoint.com/?khbKsUFcQK
ceci suppose que l'on utilise Feuil1 comme .Codename de la feuille dont le nom d'onglet Name est "BDD" , comme dans ton exemple.
Sub MajRapports()
Dim i As Long, sh As Worksheet, c As Range, myst As String Application.ScreenUpdating = False Application.DisplayAlerts = False For Each sh In ActiveWorkbook.Sheets 'on peut en exclure d'autres If sh.CodeName <> "Feuil1" Then sh.Delete Next sh Application.DisplayAlerts = True For Each c In [Sport].Cells myst = "" If c.Column Mod 2 > 0 And Not IsEmpty(c) Then On Error Resume Next myst = Worksheets(UCase(c)).Name On Error GoTo 0
If Len(myst) = 0 Then Sheets.Add after:=Sheets(Sheets.Count) With ActiveSheet .Name = UCase(c) .[a1] = "Recapitulatif" .[B1] = c .[a1:b1].Interior.ColorIndex = 44 End With End If End If Next c
For Each sh In ActiveWorkbook.Sheets If sh.CodeName <> "Feuil1" Then With [Sport] For i = 1 To .Count If UCase(.Cells(i)) = UCase(sh.[B1]) Then sh.[a65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 1) sh.[b65536].End(3)(2) = Feuil1.Cells(.Cells(i).Row, 2) End If Next i End With End If Next sh
End Sub
'lSteph
bonjour
j'ai dans une feuille avec le resultat de plusieurs saisie de fiches d'inscription depuis un userform
dans ces inscriptions j'ai la possibilite de mettre 5 activites differentes ( sportives ou culturelles)
comment faire un recapitulatif des inscrits par types d'activite