Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

recapitulatif et extractin de donnees

29 réponses
Avatar
Magic-DD
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

10 réponses

1 2 3
Avatar
LSteph
Bonjour,


Si tu parles du premier Wbk_SheetActivate, j'ai défini ainsi

[Sport] prend tout [B2:L50]

et comme n'agit que si la cellule contient le m^me nom de sport, les
prix ne sont pas genants.
Sinon j'ai poursuivi,

regarde ma proposition 1:37

Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.

perso.(fictive)


Cela n'a donc pas eu le loisir d'arriver
;o) en cas vaudrait mieux la vraie, tu y es le bienvenu au cas où!

Cordialement.

--
lSteph

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
'-----------------



Avatar
Jacky
Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.


Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement Karaté....Velo....
Cela faciliterait les futurs recherches et les actuelles.
Mais bon ,c'est magic qui voit....;o)

[Sport] prend tout [B2:L50]
Oui, oui, j'ai aussi testé comme ca, mais cela ne m'explique pas

pourquoi....

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues (colonne C,E,G,I,K= [sport])
tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne.

As-tu une idée ??

--
Salutations
JJ


"LSteph" a écrit dans le message de news:

Bonjour,


Si tu parles du premier Wbk_SheetActivate, j'ai défini ainsi

[Sport] prend tout [B2:L50]

et comme n'agit que si la cellule contient le m^me nom de sport, les prix
ne sont pas genants.
Sinon j'ai poursuivi,

regarde ma proposition 1:37

Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.

perso.(fictive)


Cela n'a donc pas eu le loisir d'arriver
;o) en cas vaudrait mieux la vraie, tu y es le bienvenu au cas où!

Cordialement.

--
lSteph

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
'-----------------





Avatar
LSteph
Re,

Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement



...et mettre un filtre auto , bien sûr...!

C'est la première réflexion que je me suis faite , mais il semble voulu
bien précisément d'avoir un visuel des activités en regard de chacun.

... mais cela ne m'explique pas
pourquoi.... Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues



Certes , c'est un fait que je n'explique pas non plus et
c'est justement pour éviter ce pb que j'ai pensé utile de mettre
dans [Sport] tout [B2:L50]

Sinon je suppose que tu as vu mon autre proposition
c'est plutôt à ce propos que je me posais cette autre question:

Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2



@+

lSteph


Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.


Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement Karaté....Velo....
Cela faciliterait les futurs recherches et les actuelles.
Mais bon ,c'est magic qui voit....;o)

[Sport] prend tout [B2:L50]
Oui, oui, j'ai aussi testé comme ca, mais cela ne m'explique pas

pourquoi....

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues (colonne C,E,G,I,K= [sport])
tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne.

As-tu une idée ??




Avatar
LSteph
Pour Sport surtout ne prendre qu'un bout de colonne
Sinon

Bingo! On est bête!
J'ai trouvé pourquoi et voilà comment :

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long, j As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents

With Range("Sport")
For j = 1 To .Areas.Count
With .Areas(j)
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
End With
Next
End With
End If
End Sub

'lSteph
Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.


Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement Karaté....Velo....
Cela faciliterait les futurs recherches et les actuelles.
Mais bon ,c'est magic qui voit....;o)

[Sport] prend tout [B2:L50]
Oui, oui, j'ai aussi testé comme ca, mais cela ne m'explique pas

pourquoi....

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues (colonne C,E,G,I,K= [sport])
tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne.

As-tu une idée ??




Avatar
Magic-DD
Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.





salut

tu as raison jacky

j'ai volontairement mis que la olonne nom et prenom mais il y a d'autres
elements tels que adresse, sexe, telephone etc que je devrais prendre en
compte

j'ai donc essaye e rajouter des colonnes mais maintenant cela ne fonctionne
plus

je reinjecte le fichier a jour

http://cjoint.com/?khn53ncVEp



Avatar
Jacky
Re...
Ce n'est pas parce-que tu as inséré des lignes que cela ne fonctionne plus,
mais parce que tu as changé la plage de contrôle ([sport]) par la plage de
contrôle([prix])
Ucase peut-être supprimer puisque le contrôle se fait sur les prix qui sont
numériques.
Tu peux insérer autant de colonne que tu veux sans modifier le code , sauf
des colonnes "prix", auquel cas tu devras modifier la plage nommée "prix"
dans "insertion/nom/définir"
Ici le fichier modifier avec la nouvelle instruction de Stéphane (For j = 1
To .Areas.Count)
http://cjoint.com/?khpzTji0IB
Sauf à ne plus modifier la structure, tu seras nommé "urgent" ;o)))
--
Salutations
JJ


"Magic-DD" a écrit dans le message de news:
%

Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait
jamais
si magicdd insérait ou bougeait une colonne.





salut

tu as raison jacky

j'ai volontairement mis que la olonne nom et prenom mais il y a d'autres
elements tels que adresse, sexe, telephone etc que je devrais prendre en
compte

j'ai donc essaye e rajouter des colonnes mais maintenant cela ne
fonctionne plus

je reinjecte le fichier a jour

http://cjoint.com/?khn53ncVEp





Avatar
Jacky
Re...
J'ai trouvé pourquoi et voilà comment :
Chapeau bas ;o)))

Je suis sur que tu ne pouvais pas "Allez en paix" comme dirait Mgr Abile
avant d'avoir trouvé.

Entre temps, Magic à modifié la plage de recherche; :o(((((

--
Salutations
JJ


"LSteph" a écrit dans le message de news:

Pour Sport surtout ne prendre qu'un bout de colonne
Sinon

Bingo! On est bête!
J'ai trouvé pourquoi et voilà comment :

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long, j As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents

With Range("Sport")
For j = 1 To .Areas.Count
With .Areas(j)
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
End With
Next
End With
End If
End Sub

'lSteph
Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.


Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement Karaté....Velo....
Cela faciliterait les futurs recherches et les actuelles.
Mais bon ,c'est magic qui voit....;o)

[Sport] prend tout [B2:L50]
Oui, oui, j'ai aussi testé comme ca, mais cela ne m'explique pas

pourquoi....

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues (colonne C,E,G,I,K= [sport])
tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne.

As-tu une idée ??






Avatar
LSteph
....voili, voilà

http://cjoint.com/?khqIJHx4id

Sub MajRapports()

Dim i As Long, Sh As Worksheet, d 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 d In [Sport].Cells
myst = ""


' c'est bien ici que cela se joue

If LCase(Left(Feuil1.Cells(1, d.Column), 4)) = "spor" _
And Not IsEmpty(d) Then
On Error Resume Next
myst = Worksheets(UCase(d)).Name
On Error GoTo 0

If Len(myst) = 0 Then
Sheets.Add after:=Sheets(Sheets.Count)
With ActiveSheet
.Name = UCase(d)
.[a1] = "Recapitulatif"
.[B1] = d
.[a1:b1].Interior.ColorIndex = 44
End With
End If
End If
Next d

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

Pour Sport surtout ne prendre qu'un bout de colonne
Sinon

Bingo! On est bête!
J'ai trouvé pourquoi et voilà comment :

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long, j As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents

With Range("Sport")
For j = 1 To .Areas.Count
With .Areas(j)
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
End With
Next
End With
End If
End Sub

'lSteph
Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait jamais
si magicdd insérait ou bougeait une colonne.


Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement Karaté....Velo....
Cela faciliterait les futurs recherches et les actuelles.
Mais bon ,c'est magic qui voit....;o)

[Sport] prend tout [B2:L50]
Oui, oui, j'ai aussi testé comme ca, mais cela ne m'explique pas

pourquoi....

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues (colonne C,E,G,I,K=
[sport]) tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne.

As-tu une idée ??






Avatar
Magic-DD
au secours


je n'ai plus du tout comme tout a l'heure

ou est passe le bouton de mise à jour
en plus je n'avais pas de liste nomme prix

est il possible de me remettre un fichier car je suis paumé

merci d'avance
"Jacky" a écrit dans le message de
news:
Re...
J'ai trouvé pourquoi et voilà comment :
Chapeau bas ;o)))

Je suis sur que tu ne pouvais pas "Allez en paix" comme dirait Mgr Abile
avant d'avoir trouvé.

Entre temps, Magic à modifié la plage de recherche; :o(((((

--
Salutations
JJ


"LSteph" a écrit dans le message de news:

Pour Sport surtout ne prendre qu'un bout de colonne
Sinon

Bingo! On est bête!
J'ai trouvé pourquoi et voilà comment :

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long, j As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents

With Range("Sport")
For j = 1 To .Areas.Count
With .Areas(j)
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
End With
Next
End With
End If
End Sub

'lSteph
Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait
jamais
si magicdd insérait ou bougeait une colonne.


Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement Karaté....Velo....
Cela faciliterait les futurs recherches et les actuelles.
Mais bon ,c'est magic qui voit....;o)

[Sport] prend tout [B2:L50]
Oui, oui, j'ai aussi testé comme ca, mais cela ne m'explique pas

pourquoi....

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues (colonne C,E,G,I,K= [sport])
tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne.

As-tu une idée ??










Avatar
Jacky
Re...
ou est passe le bouton de mise à jour
Ben, c'est que écrit comme cela, tu n'en a pas besoin...

As-tu testé ???

--
Salutations
JJ


"Magic-DD" a écrit dans le message de news:
Ol7xL%
au secours


je n'ai plus du tout comme tout a l'heure

ou est passe le bouton de mise à jour
en plus je n'avais pas de liste nomme prix

est il possible de me remettre un fichier car je suis paumé

merci d'avance
"Jacky" a écrit dans le message de
news:
Re...
J'ai trouvé pourquoi et voilà comment :
Chapeau bas ;o)))

Je suis sur que tu ne pouvais pas "Allez en paix" comme dirait Mgr Abile
avant d'avoir trouvé.

Entre temps, Magic à modifié la plage de recherche; :o(((((

--
Salutations
JJ


"LSteph" a écrit dans le message de news:

Pour Sport surtout ne prendre qu'un bout de colonne
Sinon

Bingo! On est bête!
J'ai trouvé pourquoi et voilà comment :

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i As Long, j As Long
If Sh.CodeName <> "Feuil1" Then
Application.ScreenUpdating = False
[a2:b65536].ClearContents

With Range("Sport")
For j = 1 To .Areas.Count
With .Areas(j)
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
End With
Next
End With
End If
End Sub

'lSteph
Re...
Le seul truc qui m'embête c'est que:
faudrait troquer ce mod 2 pour le choix des colonnes, on ne sait
jamais
si magicdd insérait ou bougeait une colonne.


Perso, je modifierais la structure des colonnes Sport1...sport5... en
donnant le nom des sports directement Karaté....Velo....
Cela faciliterait les futurs recherches et les actuelles.
Mais bon ,c'est magic qui voit....;o)

[Sport] prend tout [B2:L50]
Oui, oui, j'ai aussi testé comme ca, mais cela ne m'explique pas

pourquoi....

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Ne tient pas compte des plages discontinues (colonne C,E,G,I,K=
[sport]) tandis qu'avec
Private Sub Worksheet_Activate()
Cela fonctionne.

As-tu une idée ??













1 2 3