insérer selon ordre alphabétique

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Avatar du membre
fronck
Membre fidèle
Membre fidèle
Messages : 476
Appréciations reçues : 10
Inscrit le : 26 septembre 2015
Version d'Excel : 2016
Contact :
Téléchargements : Mes applications

Message par fronck » 29 août 2017, 20:51

Bonjour à tous,

Je me sers d'un fichier excel pour les congés du personnel depuis quelques années, en changeant la date du début de période.

Il y a un onglet par mois, et un onglet récap pour calculer le nombre de jours restants entre autre.

Je voudrais créer une macro pour les nouveaux salariés ou les départs salariés.

J'ai 2 problémes:
- le premier est d'insérer une nouvelle personne à l'endroit ou elle devra être selon l'ordre alphabétique des noms.
-le 2éme est d'insérer son nom dans les onglets mois qu'il reste à parcourir sur la période entre juin n et mai n+1.

je vous joins le fichier qui est assez simple, vous comprendrez mieux.

j'aimerais aussi savoir comment vous écrivez active sheet select pour éviter de faire 12 feuilles de macro.

merci aux plus calés que moi, eh oui il y en a :)

Franck
modele conges forum.xlsm
(346.76 Kio) Téléchargé 39 fois
Pour coder les opérations simples, enregistrer une macro avec la manipulation que vous voulez faire. ;;)
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 421
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 30 août 2017, 05:00

Bonjour,

Pour augmenter tes chances d'obtenir des réponses ... je te conseille d'aborder touts tes sujets ... un par un ... :wink:

Concernant l'ordre alphabétique ....

Je ne comprends pas ce qui t'interdit d'ajouter ton nouveau nom en fin de liste ... et ensuite de faire ton tri ...
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
Avatar du membre
mbbp
Passionné d'Excel
Passionné d'Excel
Messages : 6'300
Appréciations reçues : 228
Inscrit le : 29 mars 2014
Version d'Excel : 2007 FR

Message par mbbp » 30 août 2017, 08:38

fronck a écrit :insérer une nouvelle personne à l'endroit ou elle devra être selon l'ordre alphabétique des noms.
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column = 1 And Target.Count = 1 Then
    nom = Target
    [A10:B1000].Sort key1:=[A1]
    
  End If
End Sub
j
jmd
Fanatique d'Excel
Fanatique d'Excel
Messages : 10'603
Appréciations reçues : 251
Inscrit le : 8 décembre 2007
Version d'Excel : 365 + PowerBI

Message par jmd » 30 août 2017, 09:25

bonjour à tous

si on veut faire comme on faisait avec un papier et un crayon (des feuilles par mois ! ! ! ) on n'a pas fini de souffrir. Excel est un tableur, pas une copie informatique de papier.

faire une base de données, ou du moins un calendrier sans fin.

et comme dit James, ajouter une personne (sans VBA) en fin de liste, puis trier par ordre AB.
Apprenez les fonctions d'Excel.
Exemple "Mettre sous forme de tableau", TCD, "Récupérer des données".
Apprendre les fonctionnalités "récentes".
Avatar du membre
fronck
Membre fidèle
Membre fidèle
Messages : 476
Appréciations reçues : 10
Inscrit le : 26 septembre 2015
Version d'Excel : 2016
Contact :
Téléchargements : Mes applications

Message par fronck » 30 août 2017, 10:42

jmd a écrit :bonjour à tous

si on veut faire comme on faisait avec un papier et un crayon (des feuilles par mois ! ! ! ) on n'a pas fini de souffrir. Excel est un tableur, pas une copie informatique de papier.

faire une base de données, ou du moins un calendrier sans fin.

et comme dit James, ajouter une personne (sans VBA) en fin de liste, puis trier par ordre AB.
Bonjour JMD,

je comprends pas ou tu veux en venir dans ta remarque, mais si tu as un conseil, merci de développer.

Franck
Pour coder les opérations simples, enregistrer une macro avec la manipulation que vous voulez faire. ;;)
j
jmd
Fanatique d'Excel
Fanatique d'Excel
Messages : 10'603
Appréciations reçues : 251
Inscrit le : 8 décembre 2007
Version d'Excel : 365 + PowerBI

Message par jmd » 30 août 2017, 10:49

re

faire un unique onglet pour gérer TOUS les mois de TOUTES les années
ne pas faire un onglet par mois (et je suppose un fichier par an). Comme on faisait sur un papier.

Un vraie base de données. Les synthèses (sommes, bilans... ) sont alors faciles
Apprenez les fonctions d'Excel.
Exemple "Mettre sous forme de tableau", TCD, "Récupérer des données".
Apprendre les fonctionnalités "récentes".
Avatar du membre
fronck
Membre fidèle
Membre fidèle
Messages : 476
Appréciations reçues : 10
Inscrit le : 26 septembre 2015
Version d'Excel : 2016
Contact :
Téléchargements : Mes applications

Message par fronck » 30 août 2017, 11:30

Ok, mais je sais pas faire une base de données autrement.
si on peut pas l'apprendre sur ce forum, est ce que vous avez un partenaire pour faire une formation.
Pour coder les opérations simples, enregistrer une macro avec la manipulation que vous voulez faire. ;;)
j
jmd
Fanatique d'Excel
Fanatique d'Excel
Messages : 10'603
Appréciations reçues : 251
Inscrit le : 8 décembre 2007
Version d'Excel : 365 + PowerBI

Message par jmd » 30 août 2017, 11:51

re

sur un unique onglet, crée une colonne MOIS dans laquelle tu saisis 01/08/17 pour dire août 2017
fais toutes tes saisies dans cet onglet (et non dans des onglets séparés par mois ou par année)

ensuite des TCD (les TCD savent faire automatiquement des groupements par mois, années...)
Apprenez les fonctions d'Excel.
Exemple "Mettre sous forme de tableau", TCD, "Récupérer des données".
Apprendre les fonctionnalités "récentes".
Avatar du membre
fronck
Membre fidèle
Membre fidèle
Messages : 476
Appréciations reçues : 10
Inscrit le : 26 septembre 2015
Version d'Excel : 2016
Contact :
Téléchargements : Mes applications

Message par fronck » 30 août 2017, 14:26

dans mon tableau congés, j'ai besoin de mettre des salariés qui prennent des périodes de congés, des fois à cheval sur plusieurs mois.

je suis repartit d'une feuille blanche, mais sans crayon, je rassure jmd :D
Si je traduis ce que vous voulez, il faut mettre uniquement des dates de congés sans calendrier, dur à dire çà :mrgreen:
si je garde mes noms à l'horizontal, il me faut 2 cases de dates de début et fin de congés, même pour un jour :(

Maos en calculant une "datedif" entre 2, je me rends compte qu'Excel ne sait pas compter :lol:
du 1er au 18 aout, il y a 18 jours et excel fait apparemment 18-1 = 17.
sans rire, c'est bizarre ::B-
exemple.xlsm
(9.66 Kio) Téléchargé 13 fois
Pour coder les opérations simples, enregistrer une macro avec la manipulation que vous voulez faire. ;;)
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message