...
au total combien de licenciés?
Ton arborescence (exhaustif noms de catégorie)
Les intitulés de champs complets sont bien uniquement
Nom Prénom Naissance Catégorie
texte texte date texte
...
@+
Philippe a écrit :Bonjour à vous deux (LSteph et Daniel.C) et merci de votre diligence (ah
ces indiens ...)
Je viens de prendre connaissance de vos avis et, pour ma part, je
privilégie la macro par rapport au TCD.
Dans la base générale, les catégories sont définies à partir de la date
de naissance et le 31/12 de l'année en cours avec DATEDIF et une
RECHERCHEV dans un petit tableau de correspondance : âge -catégorie.
A chaque changement de saison (sportive) il suffit de changer le 31/12 de
l'année et les catégories changent d'elles même.
Avec la macro de Daniel.C, si on l'associée à un bouton, l'extraction se
fait à la "commande". Donc en début de saison, vu que les catégories ont
changées ; par exemple, le minime 1° année passe minime 2° année et le
cadet 2° année passe junior 1° année, on commande une nouvelle
extraction.
Il est également vrai que le raisonnement inverse est possible ;
renseigner les différents fichiers des catégories
et ceux-ci alimentent la base générale des licenciés.
A votre avis, pour un meilleur fonctionnement "sécurisé", dans un sens ou
dans l'autre ?
Philippe
"LSteph" a écrit dans le message de news:...
En général , on procède plutôt dans l'autre sens ou on traite le tout en
différé.Soit des extractions voir Filtre élaboré ou via TCD.
Si ton besoin est impérativement d'avoir un dossier pour chaque
catégorie il me semble plus simple de faire ce choix de dossier.Quitte à
avoir un tableau qui lui ensuite servira à récapituler l'ensemble des
catégories. Ou encore garder le principe de ta base et utiliser le
filtre automatique ou un formulaire quand on ne souhaite faire
apparaître qu'une seule catégorie.
Ce que tu demandes amha est assez lourd car pour bien fonctionner
exigerait qu'un traitement de toute la base soit opéré dans le système
de fichiers à chaque saisie pour toutes les catégories.
Exemple Toto était dans benjamins et devient minimes, et Oscar n'est
plus licencié
Cela exigerait que les fichiers restent à jour de ceux qui sont déjà
licenciés mais ont changé de catégorie ou ne sont plus licenciés, soit
des traitements plus complexes que d'aller simplement loger le dernier
enregistrement en plus de ceux qui s'y trouvent déjà.
Un traitement différé de l'ensemble par clic sur un bouton par exemple
serait plus judicieux selon moi, car mettrait à jour ou écraserait une
fois pour toutes tous les fichiers, en fin de saisies.
Que faire si on tape de travers dans la colonne catégorie?
Il faudrait sans doute avoir une liste de choix pour éviter un nom de
fichier inexistant..etc
Qu'en dis-tu?
Cordialement.
--
lSteph
Philippe a écrit :Bonjour à toutes et à tous.
Afin d'éviter du "Copier/Coller", comment extraire, dans un autre
fichier, une ligne de données si dans cette même ligne une condition
est remplie ?
Je tente de m'expliquer.
- 1 - J'ai un fichier "Licenciés" qui comporte : nom, prénom,
naissance, catégorie, ect en feuille1
- 2 - J'ai autant de dossiers que de catégories
But recherché :
lorsque je saisi un nouveau licencié dans le dossier Licenciés, fichier
"Licenciés", j'aimerai que ces nouvelles données se reportent
automatiquement dans le dossier et le fichier de la catégorie concernée
Petit exemple en ci-joint.
http://cjoint.com/?juldtAJ3OC
Merci de votre diligence.
Philippe
...
au total combien de licenciés?
Ton arborescence (exhaustif noms de catégorie)
Les intitulés de champs complets sont bien uniquement
Nom Prénom Naissance Catégorie
texte texte date texte
...
@+
Philippe a écrit :
Bonjour à vous deux (LSteph et Daniel.C) et merci de votre diligence (ah
ces indiens ...)
Je viens de prendre connaissance de vos avis et, pour ma part, je
privilégie la macro par rapport au TCD.
Dans la base générale, les catégories sont définies à partir de la date
de naissance et le 31/12 de l'année en cours avec DATEDIF et une
RECHERCHEV dans un petit tableau de correspondance : âge -catégorie.
A chaque changement de saison (sportive) il suffit de changer le 31/12 de
l'année et les catégories changent d'elles même.
Avec la macro de Daniel.C, si on l'associée à un bouton, l'extraction se
fait à la "commande". Donc en début de saison, vu que les catégories ont
changées ; par exemple, le minime 1° année passe minime 2° année et le
cadet 2° année passe junior 1° année, on commande une nouvelle
extraction.
Il est également vrai que le raisonnement inverse est possible ;
renseigner les différents fichiers des catégories
et ceux-ci alimentent la base générale des licenciés.
A votre avis, pour un meilleur fonctionnement "sécurisé", dans un sens ou
dans l'autre ?
Philippe
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
uQb1NgwGJHA.3576@TK2MSFTNGP06.phx.gbl...
...
En général , on procède plutôt dans l'autre sens ou on traite le tout en
différé.Soit des extractions voir Filtre élaboré ou via TCD.
Si ton besoin est impérativement d'avoir un dossier pour chaque
catégorie il me semble plus simple de faire ce choix de dossier.Quitte à
avoir un tableau qui lui ensuite servira à récapituler l'ensemble des
catégories. Ou encore garder le principe de ta base et utiliser le
filtre automatique ou un formulaire quand on ne souhaite faire
apparaître qu'une seule catégorie.
Ce que tu demandes amha est assez lourd car pour bien fonctionner
exigerait qu'un traitement de toute la base soit opéré dans le système
de fichiers à chaque saisie pour toutes les catégories.
Exemple Toto était dans benjamins et devient minimes, et Oscar n'est
plus licencié
Cela exigerait que les fichiers restent à jour de ceux qui sont déjà
licenciés mais ont changé de catégorie ou ne sont plus licenciés, soit
des traitements plus complexes que d'aller simplement loger le dernier
enregistrement en plus de ceux qui s'y trouvent déjà.
Un traitement différé de l'ensemble par clic sur un bouton par exemple
serait plus judicieux selon moi, car mettrait à jour ou écraserait une
fois pour toutes tous les fichiers, en fin de saisies.
Que faire si on tape de travers dans la colonne catégorie?
Il faudrait sans doute avoir une liste de choix pour éviter un nom de
fichier inexistant..etc
Qu'en dis-tu?
Cordialement.
--
lSteph
Philippe a écrit :
Bonjour à toutes et à tous.
Afin d'éviter du "Copier/Coller", comment extraire, dans un autre
fichier, une ligne de données si dans cette même ligne une condition
est remplie ?
Je tente de m'expliquer.
- 1 - J'ai un fichier "Licenciés" qui comporte : nom, prénom,
naissance, catégorie, ect en feuille1
- 2 - J'ai autant de dossiers que de catégories
But recherché :
lorsque je saisi un nouveau licencié dans le dossier Licenciés, fichier
"Licenciés", j'aimerai que ces nouvelles données se reportent
automatiquement dans le dossier et le fichier de la catégorie concernée
Petit exemple en ci-joint.
http://cjoint.com/?juldtAJ3OC
Merci de votre diligence.
Philippe
...
au total combien de licenciés?
Ton arborescence (exhaustif noms de catégorie)
Les intitulés de champs complets sont bien uniquement
Nom Prénom Naissance Catégorie
texte texte date texte
...
@+
Philippe a écrit :Bonjour à vous deux (LSteph et Daniel.C) et merci de votre diligence (ah
ces indiens ...)
Je viens de prendre connaissance de vos avis et, pour ma part, je
privilégie la macro par rapport au TCD.
Dans la base générale, les catégories sont définies à partir de la date
de naissance et le 31/12 de l'année en cours avec DATEDIF et une
RECHERCHEV dans un petit tableau de correspondance : âge -catégorie.
A chaque changement de saison (sportive) il suffit de changer le 31/12 de
l'année et les catégories changent d'elles même.
Avec la macro de Daniel.C, si on l'associée à un bouton, l'extraction se
fait à la "commande". Donc en début de saison, vu que les catégories ont
changées ; par exemple, le minime 1° année passe minime 2° année et le
cadet 2° année passe junior 1° année, on commande une nouvelle
extraction.
Il est également vrai que le raisonnement inverse est possible ;
renseigner les différents fichiers des catégories
et ceux-ci alimentent la base générale des licenciés.
A votre avis, pour un meilleur fonctionnement "sécurisé", dans un sens ou
dans l'autre ?
Philippe
"LSteph" a écrit dans le message de news:...
En général , on procède plutôt dans l'autre sens ou on traite le tout en
différé.Soit des extractions voir Filtre élaboré ou via TCD.
Si ton besoin est impérativement d'avoir un dossier pour chaque
catégorie il me semble plus simple de faire ce choix de dossier.Quitte à
avoir un tableau qui lui ensuite servira à récapituler l'ensemble des
catégories. Ou encore garder le principe de ta base et utiliser le
filtre automatique ou un formulaire quand on ne souhaite faire
apparaître qu'une seule catégorie.
Ce que tu demandes amha est assez lourd car pour bien fonctionner
exigerait qu'un traitement de toute la base soit opéré dans le système
de fichiers à chaque saisie pour toutes les catégories.
Exemple Toto était dans benjamins et devient minimes, et Oscar n'est
plus licencié
Cela exigerait que les fichiers restent à jour de ceux qui sont déjà
licenciés mais ont changé de catégorie ou ne sont plus licenciés, soit
des traitements plus complexes que d'aller simplement loger le dernier
enregistrement en plus de ceux qui s'y trouvent déjà.
Un traitement différé de l'ensemble par clic sur un bouton par exemple
serait plus judicieux selon moi, car mettrait à jour ou écraserait une
fois pour toutes tous les fichiers, en fin de saisies.
Que faire si on tape de travers dans la colonne catégorie?
Il faudrait sans doute avoir une liste de choix pour éviter un nom de
fichier inexistant..etc
Qu'en dis-tu?
Cordialement.
--
lSteph
Philippe a écrit :Bonjour à toutes et à tous.
Afin d'éviter du "Copier/Coller", comment extraire, dans un autre
fichier, une ligne de données si dans cette même ligne une condition
est remplie ?
Je tente de m'expliquer.
- 1 - J'ai un fichier "Licenciés" qui comporte : nom, prénom,
naissance, catégorie, ect en feuille1
- 2 - J'ai autant de dossiers que de catégories
But recherché :
lorsque je saisi un nouveau licencié dans le dossier Licenciés, fichier
"Licenciés", j'aimerai que ces nouvelles données se reportent
automatiquement dans le dossier et le fichier de la catégorie concernée
Petit exemple en ci-joint.
http://cjoint.com/?juldtAJ3OC
Merci de votre diligence.
Philippe
Re-bonjour à vous tous,
"Pourquoi tant de dossiers ???
Lors des inscriptions pour une épreuve, je pense qu'il est plus rapide de
chercher dans une base de données d'une centaine de noms que dans une BD de
mille noms. (enfin de pense) mais il y a toujours la différence entre
RECHERCHEV et INDEX/EQUIV au niveau vitesse !!!
C'est pour cela que je tente d'extraire par catégorie à partir d'une base
générale.
LSteph demande combien de licenciés (BD générale): maxi 1000 et par
catégories = maxi 150
Nombre de fichiers catégories : 7 mais prévoir plus si possible
Prélicenciés - poussins - pupilles - benjamins - minimes - cadets -
juniors - 19 / 24 - + 24 -
avec dans chaque catégorie : (Prélicenciés 1 - Prélicenciés 2) (Poussins
1 - Poussins 2) ect
Je joint une partie de la base générale (incomplète) elle n'est pas
vérouillée et toutes les colonnes sont visibles. (certaines sont masquées)
http://cjoint.com/?juudWwOZ8U
Re-bonjour à vous tous,
"Pourquoi tant de dossiers ???
Lors des inscriptions pour une épreuve, je pense qu'il est plus rapide de
chercher dans une base de données d'une centaine de noms que dans une BD de
mille noms. (enfin de pense) mais il y a toujours la différence entre
RECHERCHEV et INDEX/EQUIV au niveau vitesse !!!
C'est pour cela que je tente d'extraire par catégorie à partir d'une base
générale.
LSteph demande combien de licenciés (BD générale): maxi 1000 et par
catégories = maxi 150
Nombre de fichiers catégories : 7 mais prévoir plus si possible
Prélicenciés - poussins - pupilles - benjamins - minimes - cadets -
juniors - 19 / 24 - + 24 -
avec dans chaque catégorie : (Prélicenciés 1 - Prélicenciés 2) (Poussins
1 - Poussins 2) ect
Je joint une partie de la base générale (incomplète) elle n'est pas
vérouillée et toutes les colonnes sont visibles. (certaines sont masquées)
http://cjoint.com/?juudWwOZ8U
Re-bonjour à vous tous,
"Pourquoi tant de dossiers ???
Lors des inscriptions pour une épreuve, je pense qu'il est plus rapide de
chercher dans une base de données d'une centaine de noms que dans une BD de
mille noms. (enfin de pense) mais il y a toujours la différence entre
RECHERCHEV et INDEX/EQUIV au niveau vitesse !!!
C'est pour cela que je tente d'extraire par catégorie à partir d'une base
générale.
LSteph demande combien de licenciés (BD générale): maxi 1000 et par
catégories = maxi 150
Nombre de fichiers catégories : 7 mais prévoir plus si possible
Prélicenciés - poussins - pupilles - benjamins - minimes - cadets -
juniors - 19 / 24 - + 24 -
avec dans chaque catégorie : (Prélicenciés 1 - Prélicenciés 2) (Poussins
1 - Poussins 2) ect
Je joint une partie de la base générale (incomplète) elle n'est pas
vérouillée et toutes les colonnes sont visibles. (certaines sont masquées)
http://cjoint.com/?juudWwOZ8U
Bonsoir,
voici une possibilité http://cjoint.com/?jvb6PmEEgv
Mode d'emploi
Tout ce fait depuis le fichier joint Licencies placé en c:licences
où seront enregistrés chaque fichier de catégorie.
Pour l'extraction j'utilise la feuille2 renommée extraction dans
laquelle j'ai placé la liste des catégories en [o2:o15]
voir ici ... For Each c In [o2:o15].Cells ...à adapter
et l'extraction se fait par filtre élaboré avec critère en M1:M2
'''module1
Sub Extrait()
With Sheets("Licenciés")
.Range("A1:K" & .[c65536].End(xlUp).Row).AdvancedFilter
Action:=xlFilterCopy, _
CriteriaRange:=Range("M1:M2"), CopyToRange:=Range("A1:K1"),
Unique:úlse
End With
End Sub
'''Feuil2
Private Sub CommandButton1_Click()
Dim mystr As String
ChDir "c:licences"
Call Extrait
If Len([J2]) = 0 Then
mystr = "nonlicenciés"
Else
mystr = [J2]
End If
Call fiche(mystr)
MsgBox " le fichier a été enregistré"
End Sub
Private Sub CommandButton2_Click()
Call Extrait
End Sub
Private Sub CommandButton3_Click()
Dim mystr As String, c As Range
ChDir "c:licences"
Application.ScreenUpdating = False
For Each c In [o2:o15].Cells
[m2] = c
Call Extrait
If Len([J2]) = 0 Then
mystr = "nonlicenciés"
Else
mystr = [J2]
End If
Call fiche(mystr)
Next
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$M$2" Then Call Extrait
End Sub
Private Sub fiche(nom As String)
With Feuil2
.Range("A1:K" & .[c65536].End(xlUp).Row).Cells.Copy
End With
ActiveWorkbook.Sheets.Add
ActiveSheet.Paste
ActiveSheet.Move
ActiveSheet.Name = "fiche"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs nom
Application.DisplayAlerts = True
ActiveWorkbook.Close
End Sub
'lSteph
Philippe a écrit :Re-bonjour à vous tous,
"Pourquoi tant de dossiers ???
Lors des inscriptions pour une épreuve, je pense qu'il est plus rapide
de chercher dans une base de données d'une centaine de noms que dans
une BD de mille noms. (enfin de pense) mais il y a toujours la
différence entre RECHERCHEV et INDEX/EQUIV au niveau vitesse !!!
C'est pour cela que je tente d'extraire par catégorie à partir d'une
base générale.
LSteph demande combien de licenciés (BD générale): maxi 1000 et par
catégories = maxi 150
Nombre de fichiers catégories : 7 mais prévoir plus si possible
Prélicenciés - poussins - pupilles - benjamins - minimes - cadets -
juniors - 19 / 24 - + 24 -
avec dans chaque catégorie : (Prélicenciés 1 - Prélicenciés 2)
(Poussins 1 - Poussins 2) ect
Je joint une partie de la base générale (incomplète) elle n'est pas
vérouillée et toutes les colonnes sont visibles. (certaines sont
masquées)
http://cjoint.com/?juudWwOZ8U
Bonsoir,
voici une possibilité http://cjoint.com/?jvb6PmEEgv
Mode d'emploi
Tout ce fait depuis le fichier joint Licencies placé en c:licences
où seront enregistrés chaque fichier de catégorie.
Pour l'extraction j'utilise la feuille2 renommée extraction dans
laquelle j'ai placé la liste des catégories en [o2:o15]
voir ici ... For Each c In [o2:o15].Cells ...à adapter
et l'extraction se fait par filtre élaboré avec critère en M1:M2
'''module1
Sub Extrait()
With Sheets("Licenciés")
.Range("A1:K" & .[c65536].End(xlUp).Row).AdvancedFilter
Action:=xlFilterCopy, _
CriteriaRange:=Range("M1:M2"), CopyToRange:=Range("A1:K1"),
Unique:úlse
End With
End Sub
'''Feuil2
Private Sub CommandButton1_Click()
Dim mystr As String
ChDir "c:licences"
Call Extrait
If Len([J2]) = 0 Then
mystr = "nonlicenciés"
Else
mystr = [J2]
End If
Call fiche(mystr)
MsgBox " le fichier a été enregistré"
End Sub
Private Sub CommandButton2_Click()
Call Extrait
End Sub
Private Sub CommandButton3_Click()
Dim mystr As String, c As Range
ChDir "c:licences"
Application.ScreenUpdating = False
For Each c In [o2:o15].Cells
[m2] = c
Call Extrait
If Len([J2]) = 0 Then
mystr = "nonlicenciés"
Else
mystr = [J2]
End If
Call fiche(mystr)
Next
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$M$2" Then Call Extrait
End Sub
Private Sub fiche(nom As String)
With Feuil2
.Range("A1:K" & .[c65536].End(xlUp).Row).Cells.Copy
End With
ActiveWorkbook.Sheets.Add
ActiveSheet.Paste
ActiveSheet.Move
ActiveSheet.Name = "fiche"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs nom
Application.DisplayAlerts = True
ActiveWorkbook.Close
End Sub
'lSteph
Philippe a écrit :
Re-bonjour à vous tous,
"Pourquoi tant de dossiers ???
Lors des inscriptions pour une épreuve, je pense qu'il est plus rapide
de chercher dans une base de données d'une centaine de noms que dans
une BD de mille noms. (enfin de pense) mais il y a toujours la
différence entre RECHERCHEV et INDEX/EQUIV au niveau vitesse !!!
C'est pour cela que je tente d'extraire par catégorie à partir d'une
base générale.
LSteph demande combien de licenciés (BD générale): maxi 1000 et par
catégories = maxi 150
Nombre de fichiers catégories : 7 mais prévoir plus si possible
Prélicenciés - poussins - pupilles - benjamins - minimes - cadets -
juniors - 19 / 24 - + 24 -
avec dans chaque catégorie : (Prélicenciés 1 - Prélicenciés 2)
(Poussins 1 - Poussins 2) ect
Je joint une partie de la base générale (incomplète) elle n'est pas
vérouillée et toutes les colonnes sont visibles. (certaines sont
masquées)
http://cjoint.com/?juudWwOZ8U
Bonsoir,
voici une possibilité http://cjoint.com/?jvb6PmEEgv
Mode d'emploi
Tout ce fait depuis le fichier joint Licencies placé en c:licences
où seront enregistrés chaque fichier de catégorie.
Pour l'extraction j'utilise la feuille2 renommée extraction dans
laquelle j'ai placé la liste des catégories en [o2:o15]
voir ici ... For Each c In [o2:o15].Cells ...à adapter
et l'extraction se fait par filtre élaboré avec critère en M1:M2
'''module1
Sub Extrait()
With Sheets("Licenciés")
.Range("A1:K" & .[c65536].End(xlUp).Row).AdvancedFilter
Action:=xlFilterCopy, _
CriteriaRange:=Range("M1:M2"), CopyToRange:=Range("A1:K1"),
Unique:úlse
End With
End Sub
'''Feuil2
Private Sub CommandButton1_Click()
Dim mystr As String
ChDir "c:licences"
Call Extrait
If Len([J2]) = 0 Then
mystr = "nonlicenciés"
Else
mystr = [J2]
End If
Call fiche(mystr)
MsgBox " le fichier a été enregistré"
End Sub
Private Sub CommandButton2_Click()
Call Extrait
End Sub
Private Sub CommandButton3_Click()
Dim mystr As String, c As Range
ChDir "c:licences"
Application.ScreenUpdating = False
For Each c In [o2:o15].Cells
[m2] = c
Call Extrait
If Len([J2]) = 0 Then
mystr = "nonlicenciés"
Else
mystr = [J2]
End If
Call fiche(mystr)
Next
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$M$2" Then Call Extrait
End Sub
Private Sub fiche(nom As String)
With Feuil2
.Range("A1:K" & .[c65536].End(xlUp).Row).Cells.Copy
End With
ActiveWorkbook.Sheets.Add
ActiveSheet.Paste
ActiveSheet.Move
ActiveSheet.Name = "fiche"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs nom
Application.DisplayAlerts = True
ActiveWorkbook.Close
End Sub
'lSteph
Philippe a écrit :Re-bonjour à vous tous,
"Pourquoi tant de dossiers ???
Lors des inscriptions pour une épreuve, je pense qu'il est plus rapide
de chercher dans une base de données d'une centaine de noms que dans
une BD de mille noms. (enfin de pense) mais il y a toujours la
différence entre RECHERCHEV et INDEX/EQUIV au niveau vitesse !!!
C'est pour cela que je tente d'extraire par catégorie à partir d'une
base générale.
LSteph demande combien de licenciés (BD générale): maxi 1000 et par
catégories = maxi 150
Nombre de fichiers catégories : 7 mais prévoir plus si possible
Prélicenciés - poussins - pupilles - benjamins - minimes - cadets -
juniors - 19 / 24 - + 24 -
avec dans chaque catégorie : (Prélicenciés 1 - Prélicenciés 2)
(Poussins 1 - Poussins 2) ect
Je joint une partie de la base générale (incomplète) elle n'est pas
vérouillée et toutes les colonnes sont visibles. (certaines sont
masquées)
http://cjoint.com/?juudWwOZ8U