Macro ou formule ramenant les memes info pour un numero
Bonjour à tous,
J'essaie de faire ce fichier depuis quelque temps en grandeur nature mais je n'y parviens pas, pourriez vous m'aider svp? merci
Je suis en train de créer un fichier avec un récapitulatif pour lister des étudiants pour les convocations d'examens.
J'ai donc leur numéro, leur nom, date de naissance et j'ai crée 12 feuilles qui correspondent au mois de l'année pour avoir pour chaque mois le matricule que je rentre et je retrouve leur informations les concernant. dans chacune de ces feuilles on y a le jour, et l'heure de convocation et on sait ensuite si il a réussi son examen. Dans une feuille convocation pour l'examen j'ai repris grace a une recherchev et le numero le nom de l'étudiant et j'essaie de prendre son heure de convocation. Donc la recherche doit s effectuer dans chacune des feuilles des mois. Je suis arrivée à faire cela mais je voudrais en faite pouvoir mettre par exemple plusieurs convocations pour un meme numero.
Ex: si l'étudiant 2 a fait sa 1ere convocation d'examen le 4 février à 10h je voudrais pouvoir lui refixer une convocation pour le 3 mars à 9h or quand je rentre dans ma convoc son numero d étudiant j'ai toujours la date de convocation pour le 4 février qui revient.
Comment faire ? en sachant que je dois conserver chaque date qui sont rentrées dans les mois. Une macro ?
Je vous joins le fichier d exemple
merci pour votre aide
Bonsoir,
Regarde le fichier joint.
J'ai rajouté une liste nommée "num", qui intègre les numéros des candidats. Cette liste est dynamique, c'est à dire que tu peux rajouter des numéros, ils seront pris en compte.
Dans la feuille "Convoc", j'ai rajouté une validation de données dans la cellule B3. Tu sélectionnes un numéro de candidat, et les dates et horaires de ses passages apparaissent.
Reviens si tu n'y arrives pas à intégrer dans ton fichier réel.
Bonne nuit
Bonjour cousinhub,
Tout d abord je voudrais te remercier pour ta réponse et ton aide
ensuite par rapport à mon fichier je voudrais pouvoir rajouter une convocation en fait pour un meme candidat meme si il en a déjà une. En fait son numero apparait plusieurs fois dans le calendrier des mois. Ainsi si on rajoute par exemple le 3 dans un mois et qu il existe deja j'ai essaye avec ton fichier il me répond erreur de debogage.
ou alors j'ai peut être mal compris ta réponse.
je ne voudrais pas rajouter de nouveaux étudiants mais deja de leur numero qui existent.
L étudiant 3 peut avoir plusieurs convocations et j aimerais pouvoir garder ses anciennes dates de convocations dans mon calendrier et saisir la nouvelle convocation dans la feuille convoc.
merci beaucoup
Bonjour,
bertiebotts3 a écrit :ensuite par rapport à mon fichier je voudrais pouvoir rajouter une convocation en fait pour un meme candidat meme si il en a déjà une. En fait son numero apparait plusieurs fois dans le calendrier des mois. Ainsi si on rajoute par exemple le 3 dans un mois et qu il existe deja j'ai essaye avec ton fichier il me répond erreur de debogage.
ou alors j'ai peut être mal compris ta réponse.
je ne voudrais pas rajouter de nouveaux étudiants mais deja de leur numero qui existent.
L étudiant 3 peut avoir plusieurs convocations et j aimerais pouvoir garder ses anciennes dates de convocations dans mon calendrier et saisir la nouvelle convocation dans la feuille convoc.
Normalement, le code le fait (du moins chez moi...)
quelle ligne est surlignée en jaune, lorsque tu appuies sur le bouton "Débogage"?
Par contre, si tu effaces une convocation dans un des onglets "mois", celui-ci ne sera plus comptabilisé dans le résultat. Donc, il vaut mieux laisser les dates passées. Si tu dois les supprimer, je peux changer mon code.
Est-ce que tu peux me joindre ton fichier réel? (en changeant juste les noms) afin que je puisse voir où se situe le problème?
@ te relire
Bonjour,
Quand je rentre un numéro j'ai l'erreur suivante qui s'affiche:
erreur d execution 429
Un composant active x ne peut pas créer d'objets.
cette erreur s affiche dans le fichier exemple que vous m avez renvoyé
De ce qui est des dates passées elles doivent rester présentes dans les différents mois mais quand une nouvelle date est fixée pour un candidat la nouvelle date doit s afficher dans la convoc
Concernant le fichier je ne l'ai pas avec moi donc je ne peux pas vous le joindre mais il exactement comme celui que j'ai joint.
vous remerciant
Re-,
Je viens de télécharger mon propre fichier, et aucun souci....
Euh, sur MAC ou sur PC?
Cousinhub
Le problème venait de là !!!!
j'ai ouvert le fichier avec mon mac et cette erreur apparaissait!
et je l'ai ouvert avec mon pc et ça fonctionne !
et vu que je devrais travailler sur pc c'est parfait tout fonctionne comme je le désire je te remercie vraiment beaucoup pour ton aide je ne pensais pas avoir de réponses aussi rapidement et si gentiment !
encore merci
très bon weekend
Bonjourr cousinhub
Encore merci pour ce que tu as fait
Pourrez tu stp m expliquer le code Ligne par ligne de la macro pour que je puisse le faire pour d autres sujets stp ?
Merci beaucoup
Rebonjour CousinHub,
j'essaie de mettre une feuille recap dans mon fichier qui retrace toutes les convocations des examens pour tous les étudiants
j'ai essayé avec :
Sub recapi()
Dim feuille As Worksheet
Dim derniere As Long, livi As Long
Const premiereligne As Integer = 4
Set feuille = Sheets("recap")
derli = Cells(Columns(5).Cells.Count, 1).End(xlUp).Row
For C = premiereligne To derniere
nb = Application.CountA(Rows(C))
If nb > 0 Then
derco = Cells(C, Rows(C).Cells.Count).End(xlToLeft).Column
With sh2
livi = (.Cells(Columns(5).Cells.Count, 1).End(xlUp).Row + 1)
.Range(.Cells(livi, 1), .Cells(livi, derco)) = Range(Cells(C, 1), Cells(C, derco)).Value
End With
End If
Next C
End Sub
mais ne fonctionne pas j'aimerais partir de la 4eme ligne de chaque feuille des mois et avoir les convocs dans l'ordre des mois, soit le recap de toutes mes convocations d'exam que j'ai crée
pourrais tu m'éclairer stp ?
merci beaucoup
Bonjour,
Essaie avec ce code, si j'ai bien compris...
Code commenté
Sub Recap_Exam()
Dim Sh As Worksheet
Dim Plg As Range
Dim DerLig As Long
Application.ScreenUpdating = False 'évite le raffraichissement de l'écran
With Sheets("Recap")
.Cells.Clear 'on nettoie la feuille Recap
.Range("A1:E1").Value = Sheets("janvier").Range("E4:I4").Value 'on met le titre
For Each Sh In Sheets 'on balaie les onglets
If Sh.Name <> "Recap" And Sh.Name <> "données" And Sh.Name <> "CONVOC" Then
'en fonction du nom de l'onglet
DerLig = Sh.Cells(Rows.Count, "E").End(xlUp).Row 'calcul de la dernière ligne
If DerLig > 4 Then 'si on a des infos
Sh.Range("E5:I" & DerLig).Copy 'on copie les infos
.Cells(Rows.Count, "A").End(xlUp)(2).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
'on fait un collage spécial Valeurs et Formats
End If
End If
Next Sh 'suite
.Columns("A:E").EntireColumn.AutoFit 'on met la largeur des colonnes
.Columns("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
'on supprime les lignes vides
DerLig = .Cells(Rows.Count, "A").End(xlUp).Row
'calcul de la dernière ligne
With .Sort 'et on fait le tri sur les dates
.SortFields.Clear
.SortFields.Add Key:=Range("D2:D" & DerLig), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.SetRange Range("A1:E" & DerLig)
.Header = xlYes
.Apply
End With
.Range("A1").Select
End With
End Sub
Bon courage
oui c'est vraiment ce que je souhaitais tu avais tout compris
encore merci pour ton aide précieuse
bonne soirée