Hello à tous,
Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
licenciés
et bien entendu, les 30 ne viennent pas à tous les matchs.
J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
colonne la date du match et en ligne, le nom du joueur. Le joueur inscrit
un
"x" lorsqu'il est disponible à une certaine date.
A ce jour, ma macro me permet de faire qu'une partie de ce que j'aimerais.
En fait lorsque je lance la macro, un UserForm apparaît et invite
l'utilisateur à choisir une date dans un ComboBox. Les dates sont insérée
en
fonction de celles inscrite dans les titres de colonne de la feuille
"Présence".
Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
feuille "Template" est dupliquée et renomée en fonction de la date choisie
(le nom de la feuille = la date du match) *et les joueurs ayant un "x" à
cette date là sont copiés et collés dans la feuille dupliquée ci-dessus*.
C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
Est-ce
que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code complet
de
la macro/UserForm jusqu'à présent... Merci d'avance!
Private Sub UserForm_Initialize()
'On charge les dates de matches dans la liste
For i = 2 To 256
With Sheets("Présences").Cells(1, i)
If .Value <> "" Then
ComboBox1.AddItem .Text
End If
End With
Next i
End Sub
Private Sub CommandButton1_Click()
match_date = ComboBox1.Value
'On copie le template et on renomme la feuille
Sheets("Template").Copy After:=Sheets(4)
Sheets("Template (2)").Name = match_date
' Sélectionner tous les noms de la colonne A ayant un "x" dans la colonne
correspondant au match_date et les copier dans la feuille ayant pour nom
le
match_date
'On ferme le programme
UserForm1.Hide
End Sub
Hello à tous,
Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
licenciés
et bien entendu, les 30 ne viennent pas à tous les matchs.
J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
colonne la date du match et en ligne, le nom du joueur. Le joueur inscrit
un
"x" lorsqu'il est disponible à une certaine date.
A ce jour, ma macro me permet de faire qu'une partie de ce que j'aimerais.
En fait lorsque je lance la macro, un UserForm apparaît et invite
l'utilisateur à choisir une date dans un ComboBox. Les dates sont insérée
en
fonction de celles inscrite dans les titres de colonne de la feuille
"Présence".
Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
feuille "Template" est dupliquée et renomée en fonction de la date choisie
(le nom de la feuille = la date du match) *et les joueurs ayant un "x" à
cette date là sont copiés et collés dans la feuille dupliquée ci-dessus*.
C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
Est-ce
que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code complet
de
la macro/UserForm jusqu'à présent... Merci d'avance!
Private Sub UserForm_Initialize()
'On charge les dates de matches dans la liste
For i = 2 To 256
With Sheets("Présences").Cells(1, i)
If .Value <> "" Then
ComboBox1.AddItem .Text
End If
End With
Next i
End Sub
Private Sub CommandButton1_Click()
match_date = ComboBox1.Value
'On copie le template et on renomme la feuille
Sheets("Template").Copy After:=Sheets(4)
Sheets("Template (2)").Name = match_date
' Sélectionner tous les noms de la colonne A ayant un "x" dans la colonne
correspondant au match_date et les copier dans la feuille ayant pour nom
le
match_date
'On ferme le programme
UserForm1.Hide
End Sub
Hello à tous,
Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
licenciés
et bien entendu, les 30 ne viennent pas à tous les matchs.
J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
colonne la date du match et en ligne, le nom du joueur. Le joueur inscrit
un
"x" lorsqu'il est disponible à une certaine date.
A ce jour, ma macro me permet de faire qu'une partie de ce que j'aimerais.
En fait lorsque je lance la macro, un UserForm apparaît et invite
l'utilisateur à choisir une date dans un ComboBox. Les dates sont insérée
en
fonction de celles inscrite dans les titres de colonne de la feuille
"Présence".
Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
feuille "Template" est dupliquée et renomée en fonction de la date choisie
(le nom de la feuille = la date du match) *et les joueurs ayant un "x" à
cette date là sont copiés et collés dans la feuille dupliquée ci-dessus*.
C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
Est-ce
que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code complet
de
la macro/UserForm jusqu'à présent... Merci d'avance!
Private Sub UserForm_Initialize()
'On charge les dates de matches dans la liste
For i = 2 To 256
With Sheets("Présences").Cells(1, i)
If .Value <> "" Then
ComboBox1.AddItem .Text
End If
End With
Next i
End Sub
Private Sub CommandButton1_Click()
match_date = ComboBox1.Value
'On copie le template et on renomme la feuille
Sheets("Template").Copy After:=Sheets(4)
Sheets("Template (2)").Name = match_date
' Sélectionner tous les noms de la colonne A ayant un "x" dans la colonne
correspondant au match_date et les copier dans la feuille ayant pour nom
le
match_date
'On ferme le programme
UserForm1.Hide
End Sub
Bonjour, je ne sais pas si tes données sont distribuées Sous forme de base
de données, si c'est le cas, il serait judicieux de faire une extraction par
filtre élaboré (en VBA bien sur) dans lequel filtre tu pourrais mettre comme
critères une date de match et le x des joueurs concernés.
Puis extraire le résultat sur une feuille de ton choix ou les titres des
colonnes que tu souhaites extraire figurent sur cette feuille !
--
Cordialement
"YeTi" a écrit dans le message de
news:
> Hello à tous,
>
> Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
> licenciés
> et bien entendu, les 30 ne viennent pas à tous les matchs.
> J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
> colonne la date du match et en ligne, le nom du joueur. Le joueur inscrit
> un
> "x" lorsqu'il est disponible à une certaine date.
>
> A ce jour, ma macro me permet de faire qu'une partie de ce que j'aimerais.
> En fait lorsque je lance la macro, un UserForm apparaît et invite
> l'utilisateur à choisir une date dans un ComboBox. Les dates sont insérée
> en
> fonction de celles inscrite dans les titres de colonne de la feuille
> "Présence".
>
> Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
> feuille "Template" est dupliquée et renomée en fonction de la date choisie
> (le nom de la feuille = la date du match) *et les joueurs ayant un "x" à
> cette date là sont copiés et collés dans la feuille dupliquée ci-dessus*.
>
> C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
> Est-ce
> que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code complet
> de
> la macro/UserForm jusqu'à présent... Merci d'avance!
>
>
> Private Sub UserForm_Initialize()
> 'On charge les dates de matches dans la liste
> For i = 2 To 256
> With Sheets("Présences").Cells(1, i)
> If .Value <> "" Then
> ComboBox1.AddItem .Text
> End If
> End With
> Next i
> End Sub
>
> Private Sub CommandButton1_Click()
> match_date = ComboBox1.Value
>
> 'On copie le template et on renomme la feuille
> Sheets("Template").Copy After:=Sheets(4)
> Sheets("Template (2)").Name = match_date
>
>
> ' Sélectionner tous les noms de la colonne A ayant un "x" dans la colonne
> correspondant au match_date et les copier dans la feuille ayant pour nom
> le
> match_date
>
>
> 'On ferme le programme
> UserForm1.Hide
> End Sub
Bonjour, je ne sais pas si tes données sont distribuées Sous forme de base
de données, si c'est le cas, il serait judicieux de faire une extraction par
filtre élaboré (en VBA bien sur) dans lequel filtre tu pourrais mettre comme
critères une date de match et le x des joueurs concernés.
Puis extraire le résultat sur une feuille de ton choix ou les titres des
colonnes que tu souhaites extraire figurent sur cette feuille !
--
Cordialement
jpmonnier-nospam@neuf.fr
"YeTi" <YeTi@discussions.microsoft.com> a écrit dans le message de
news:F57F786E-04E4-484A-8D7F-F1B546D2A134@microsoft.com...
> Hello à tous,
>
> Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
> licenciés
> et bien entendu, les 30 ne viennent pas à tous les matchs.
> J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
> colonne la date du match et en ligne, le nom du joueur. Le joueur inscrit
> un
> "x" lorsqu'il est disponible à une certaine date.
>
> A ce jour, ma macro me permet de faire qu'une partie de ce que j'aimerais.
> En fait lorsque je lance la macro, un UserForm apparaît et invite
> l'utilisateur à choisir une date dans un ComboBox. Les dates sont insérée
> en
> fonction de celles inscrite dans les titres de colonne de la feuille
> "Présence".
>
> Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
> feuille "Template" est dupliquée et renomée en fonction de la date choisie
> (le nom de la feuille = la date du match) *et les joueurs ayant un "x" à
> cette date là sont copiés et collés dans la feuille dupliquée ci-dessus*.
>
> C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
> Est-ce
> que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code complet
> de
> la macro/UserForm jusqu'à présent... Merci d'avance!
>
>
> Private Sub UserForm_Initialize()
> 'On charge les dates de matches dans la liste
> For i = 2 To 256
> With Sheets("Présences").Cells(1, i)
> If .Value <> "" Then
> ComboBox1.AddItem .Text
> End If
> End With
> Next i
> End Sub
>
> Private Sub CommandButton1_Click()
> match_date = ComboBox1.Value
>
> 'On copie le template et on renomme la feuille
> Sheets("Template").Copy After:=Sheets(4)
> Sheets("Template (2)").Name = match_date
>
>
> ' Sélectionner tous les noms de la colonne A ayant un "x" dans la colonne
> correspondant au match_date et les copier dans la feuille ayant pour nom
> le
> match_date
>
>
> 'On ferme le programme
> UserForm1.Hide
> End Sub
Bonjour, je ne sais pas si tes données sont distribuées Sous forme de base
de données, si c'est le cas, il serait judicieux de faire une extraction par
filtre élaboré (en VBA bien sur) dans lequel filtre tu pourrais mettre comme
critères une date de match et le x des joueurs concernés.
Puis extraire le résultat sur une feuille de ton choix ou les titres des
colonnes que tu souhaites extraire figurent sur cette feuille !
--
Cordialement
"YeTi" a écrit dans le message de
news:
> Hello à tous,
>
> Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
> licenciés
> et bien entendu, les 30 ne viennent pas à tous les matchs.
> J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
> colonne la date du match et en ligne, le nom du joueur. Le joueur inscrit
> un
> "x" lorsqu'il est disponible à une certaine date.
>
> A ce jour, ma macro me permet de faire qu'une partie de ce que j'aimerais.
> En fait lorsque je lance la macro, un UserForm apparaît et invite
> l'utilisateur à choisir une date dans un ComboBox. Les dates sont insérée
> en
> fonction de celles inscrite dans les titres de colonne de la feuille
> "Présence".
>
> Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
> feuille "Template" est dupliquée et renomée en fonction de la date choisie
> (le nom de la feuille = la date du match) *et les joueurs ayant un "x" à
> cette date là sont copiés et collés dans la feuille dupliquée ci-dessus*.
>
> C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
> Est-ce
> que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code complet
> de
> la macro/UserForm jusqu'à présent... Merci d'avance!
>
>
> Private Sub UserForm_Initialize()
> 'On charge les dates de matches dans la liste
> For i = 2 To 256
> With Sheets("Présences").Cells(1, i)
> If .Value <> "" Then
> ComboBox1.AddItem .Text
> End If
> End With
> Next i
> End Sub
>
> Private Sub CommandButton1_Click()
> match_date = ComboBox1.Value
>
> 'On copie le template et on renomme la feuille
> Sheets("Template").Copy After:=Sheets(4)
> Sheets("Template (2)").Name = match_date
>
>
> ' Sélectionner tous les noms de la colonne A ayant un "x" dans la colonne
> correspondant au match_date et les copier dans la feuille ayant pour nom
> le
> match_date
>
>
> 'On ferme le programme
> UserForm1.Hide
> End Sub
Merci JPMonnier pour cette réponse,
Je ne suis pas une star en VBA, je pêche un peu des infos à droite à
gauche
et essaie de les adapter à mes besoins et je dois avouer n'avoir jamais
utilisés les filtres élaborés en VBA.
Etant donné que j'ai presque trouvé la solution pourrais-tu m'aider à
finaliser la chose? A mon avis, l'erreur provient de "Columns.Copy "
ci-dessous. Comment copier la colonne d'une cellule répondant à une
condition?
Merci d'avance!
'On copie la disponibilité du joueur en fonction de la date choisie
For i = 2 To 256
If Cells(1, i) = match_date Then
Columns.Copy
Sheets("Formules").Range("A2").PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks _
:úlse, Transpose:úlse
End If
Next i
"JPMonnier" wrote:Bonjour, je ne sais pas si tes données sont distribuées Sous forme de
base
de données, si c'est le cas, il serait judicieux de faire une extraction
par
filtre élaboré (en VBA bien sur) dans lequel filtre tu pourrais mettre
comme
critères une date de match et le x des joueurs concernés.
Puis extraire le résultat sur une feuille de ton choix ou les titres des
colonnes que tu souhaites extraire figurent sur cette feuille !
--
Cordialement
"YeTi" a écrit dans le message de
news:
> Hello à tous,
>
> Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
> licenciés
> et bien entendu, les 30 ne viennent pas à tous les matchs.
> J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
> colonne la date du match et en ligne, le nom du joueur. Le joueur
> inscrit
> un
> "x" lorsqu'il est disponible à une certaine date.
>
> A ce jour, ma macro me permet de faire qu'une partie de ce que
> j'aimerais.
> En fait lorsque je lance la macro, un UserForm apparaît et invite
> l'utilisateur à choisir une date dans un ComboBox. Les dates sont
> insérée
> en
> fonction de celles inscrite dans les titres de colonne de la feuille
> "Présence".
>
> Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
> feuille "Template" est dupliquée et renomée en fonction de la date
> choisie
> (le nom de la feuille = la date du match) *et les joueurs ayant un "x"
> à
> cette date là sont copiés et collés dans la feuille dupliquée
> ci-dessus*.
>
> C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
> Est-ce
> que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code
> complet
> de
> la macro/UserForm jusqu'à présent... Merci d'avance!
>
>
> Private Sub UserForm_Initialize()
> 'On charge les dates de matches dans la liste
> For i = 2 To 256
> With Sheets("Présences").Cells(1, i)
> If .Value <> "" Then
> ComboBox1.AddItem .Text
> End If
> End With
> Next i
> End Sub
>
> Private Sub CommandButton1_Click()
> match_date = ComboBox1.Value
>
> 'On copie le template et on renomme la feuille
> Sheets("Template").Copy After:=Sheets(4)
> Sheets("Template (2)").Name = match_date
>
>
> ' Sélectionner tous les noms de la colonne A ayant un "x" dans la
> colonne
> correspondant au match_date et les copier dans la feuille ayant pour
> nom
> le
> match_date
>
>
> 'On ferme le programme
> UserForm1.Hide
> End Sub
Merci JPMonnier pour cette réponse,
Je ne suis pas une star en VBA, je pêche un peu des infos à droite à
gauche
et essaie de les adapter à mes besoins et je dois avouer n'avoir jamais
utilisés les filtres élaborés en VBA.
Etant donné que j'ai presque trouvé la solution pourrais-tu m'aider à
finaliser la chose? A mon avis, l'erreur provient de "Columns.Copy "
ci-dessous. Comment copier la colonne d'une cellule répondant à une
condition?
Merci d'avance!
'On copie la disponibilité du joueur en fonction de la date choisie
For i = 2 To 256
If Cells(1, i) = match_date Then
Columns.Copy
Sheets("Formules").Range("A2").PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks _
:úlse, Transpose:úlse
End If
Next i
"JPMonnier" wrote:
Bonjour, je ne sais pas si tes données sont distribuées Sous forme de
base
de données, si c'est le cas, il serait judicieux de faire une extraction
par
filtre élaboré (en VBA bien sur) dans lequel filtre tu pourrais mettre
comme
critères une date de match et le x des joueurs concernés.
Puis extraire le résultat sur une feuille de ton choix ou les titres des
colonnes que tu souhaites extraire figurent sur cette feuille !
--
Cordialement
jpmonnier-nospam@neuf.fr
"YeTi" <YeTi@discussions.microsoft.com> a écrit dans le message de
news:F57F786E-04E4-484A-8D7F-F1B546D2A134@microsoft.com...
> Hello à tous,
>
> Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
> licenciés
> et bien entendu, les 30 ne viennent pas à tous les matchs.
> J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
> colonne la date du match et en ligne, le nom du joueur. Le joueur
> inscrit
> un
> "x" lorsqu'il est disponible à une certaine date.
>
> A ce jour, ma macro me permet de faire qu'une partie de ce que
> j'aimerais.
> En fait lorsque je lance la macro, un UserForm apparaît et invite
> l'utilisateur à choisir une date dans un ComboBox. Les dates sont
> insérée
> en
> fonction de celles inscrite dans les titres de colonne de la feuille
> "Présence".
>
> Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
> feuille "Template" est dupliquée et renomée en fonction de la date
> choisie
> (le nom de la feuille = la date du match) *et les joueurs ayant un "x"
> à
> cette date là sont copiés et collés dans la feuille dupliquée
> ci-dessus*.
>
> C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
> Est-ce
> que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code
> complet
> de
> la macro/UserForm jusqu'à présent... Merci d'avance!
>
>
> Private Sub UserForm_Initialize()
> 'On charge les dates de matches dans la liste
> For i = 2 To 256
> With Sheets("Présences").Cells(1, i)
> If .Value <> "" Then
> ComboBox1.AddItem .Text
> End If
> End With
> Next i
> End Sub
>
> Private Sub CommandButton1_Click()
> match_date = ComboBox1.Value
>
> 'On copie le template et on renomme la feuille
> Sheets("Template").Copy After:=Sheets(4)
> Sheets("Template (2)").Name = match_date
>
>
> ' Sélectionner tous les noms de la colonne A ayant un "x" dans la
> colonne
> correspondant au match_date et les copier dans la feuille ayant pour
> nom
> le
> match_date
>
>
> 'On ferme le programme
> UserForm1.Hide
> End Sub
Merci JPMonnier pour cette réponse,
Je ne suis pas une star en VBA, je pêche un peu des infos à droite à
gauche
et essaie de les adapter à mes besoins et je dois avouer n'avoir jamais
utilisés les filtres élaborés en VBA.
Etant donné que j'ai presque trouvé la solution pourrais-tu m'aider à
finaliser la chose? A mon avis, l'erreur provient de "Columns.Copy "
ci-dessous. Comment copier la colonne d'une cellule répondant à une
condition?
Merci d'avance!
'On copie la disponibilité du joueur en fonction de la date choisie
For i = 2 To 256
If Cells(1, i) = match_date Then
Columns.Copy
Sheets("Formules").Range("A2").PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks _
:úlse, Transpose:úlse
End If
Next i
"JPMonnier" wrote:Bonjour, je ne sais pas si tes données sont distribuées Sous forme de
base
de données, si c'est le cas, il serait judicieux de faire une extraction
par
filtre élaboré (en VBA bien sur) dans lequel filtre tu pourrais mettre
comme
critères une date de match et le x des joueurs concernés.
Puis extraire le résultat sur une feuille de ton choix ou les titres des
colonnes que tu souhaites extraire figurent sur cette feuille !
--
Cordialement
"YeTi" a écrit dans le message de
news:
> Hello à tous,
>
> Je fais un classeur Excel pour mon équipe de foot. Nous sommes 30
> licenciés
> et bien entendu, les 30 ne viennent pas à tous les matchs.
> J'ai donc fait un tableau dans une feuille "Présence" avec en titre de
> colonne la date du match et en ligne, le nom du joueur. Le joueur
> inscrit
> un
> "x" lorsqu'il est disponible à une certaine date.
>
> A ce jour, ma macro me permet de faire qu'une partie de ce que
> j'aimerais.
> En fait lorsque je lance la macro, un UserForm apparaît et invite
> l'utilisateur à choisir une date dans un ComboBox. Les dates sont
> insérée
> en
> fonction de celles inscrite dans les titres de colonne de la feuille
> "Présence".
>
> Lorsque la date a été choisie, l'utilisateur clique sur exécuter et la
> feuille "Template" est dupliquée et renomée en fonction de la date
> choisie
> (le nom de la feuille = la date du match) *et les joueurs ayant un "x"
> à
> cette date là sont copiés et collés dans la feuille dupliquée
> ci-dessus*.
>
> C'est la seconde partie (entourée de *) que je n'arrive pas à créer.
> Est-ce
> que quelqu'un pourrait m'aider? Je vous laisse ci-dessous le code
> complet
> de
> la macro/UserForm jusqu'à présent... Merci d'avance!
>
>
> Private Sub UserForm_Initialize()
> 'On charge les dates de matches dans la liste
> For i = 2 To 256
> With Sheets("Présences").Cells(1, i)
> If .Value <> "" Then
> ComboBox1.AddItem .Text
> End If
> End With
> Next i
> End Sub
>
> Private Sub CommandButton1_Click()
> match_date = ComboBox1.Value
>
> 'On copie le template et on renomme la feuille
> Sheets("Template").Copy After:=Sheets(4)
> Sheets("Template (2)").Name = match_date
>
>
> ' Sélectionner tous les noms de la colonne A ayant un "x" dans la
> colonne
> correspondant au match_date et les copier dans la feuille ayant pour
> nom
> le
> match_date
>
>
> 'On ferme le programme
> UserForm1.Hide
> End Sub