Recuperer les num de la ligne en fonction des nom prenom
blalaa
Messages postés
171
Statut
Membre
-
blalaa Messages postés 171 Statut Membre -
blalaa Messages postés 171 Statut Membre -
Bonjour,
je souhaite creer un programme qui me permettra d'effectuer les taches suivantes :
-dans les cellules du cercle 5 je vais enregistrer manuellement des noms et prenoms qui peuvent etre change et remplacer a n'import quel moment (on va rajouter des nom prenom et on va aussi supprimer)
-dans le cercle 4 on trouve les numeros de chaque ligne enregistrer aussi manullement
- maintenant je veux creer un bouton qui va me permettre de :
si j'enregistre un nom prenom dans qlqonc ligne du cercle 1 (colonne A) (qui se trouve bien sur dans le cercle 5 colonne C ) mon programme va me chercher ce nom et prenom dans le cercle 5 (colonne C) et vas recuperer le numero de sa ligne (colonne B cercle 4) et le renvoyer a la ligne ou j'enregistre le nom prenom dans le cercle 2 (colonne B)
exemple :
-si je enregistre "Jerome CRIBIER " dans cellule A2 (qui se trouve a la cellule C29) , la cellule B2 va prendre le numero 6
un autre exemple
-si je enregistre "Jerome CRIBIER " dans la cellule A8 , la cellule B8 va prendre le numero 6
pour quoi numero 6 ? par ce que la ligne ou enregister "Jerome CRIBIER " dans le cercle 4 (cellule B29) est de 6
ainsi de suit pour tout les noms et prenom
PS : sachant que je vais ajouter des nouveau nom prenom et retirer aussi
je ne sais pas si c possible mais c serais vraiment tres gentille de votre part de maider dans mon projet de fin d'etude
je vous remerci
ps : si limage que j'ai partage ne se voit pas laisser moi un commentaire pour que je vous lenvoie par mail si vous voulez
merci encore
A voir également:
- Fonction du nom
- Fonction si et - Guide
- Nom sonnerie iphone - Forum iPhone
- Le nom du champ de tableau croisé dynamique n'est pas valide ✓ - Forum Excel
- Nom de compte steam exemple - Forum Jeux vidéo
- Changer le nom du pc - Guide
2 réponses
Bonjour,
Visiblement.. pour ce que tu demandes.. pas besoin de code vba ....
Une simple formule INDEX/EQUIV suffirait...
En B1 :
Formule à étirer vers le bas...
Bien entendu.. si tu ajoutes des noms dans ton cercle 5... il faudra adapter les plages de cellules
par exemple, avec 10 noms en plus :
B$24:C$50
C$24:C$50
Visiblement.. pour ce que tu demandes.. pas besoin de code vba ....
Une simple formule INDEX/EQUIV suffirait...
En B1 :
=INDEX(B$24:C$40;EQUIV(A2;C$24:C$40;0);1)
Formule à étirer vers le bas...
Bien entendu.. si tu ajoutes des noms dans ton cercle 5... il faudra adapter les plages de cellules
par exemple, avec 10 noms en plus :
B$24:C$50
C$24:C$50
re
je suis un debutant alors si vous pouvez maider ca serait vraiment gentil ,
ce que j'ai fait moi c de recuperer les numero de la ligne et les renvoyer a des cellule specifiee (en dure ) par ce que moi j'ai cru que les noms prenom qui sont enregistre dans la colonne A son fixe dans ces cases la
mais apparement mon tuteur veut que des que il met un nom prenom dans la colonne A le code cherchera le num de la ligne ou enregsitrer dans la colonne C
voici le code que j'ai utiliser moi
je suis un debutant alors si vous pouvez maider ca serait vraiment gentil ,
ce que j'ai fait moi c de recuperer les numero de la ligne et les renvoyer a des cellule specifiee (en dure ) par ce que moi j'ai cru que les noms prenom qui sont enregistre dans la colonne A son fixe dans ces cases la
mais apparement mon tuteur veut que des que il met un nom prenom dans la colonne A le code cherchera le num de la ligne ou enregsitrer dans la colonne C
voici le code que j'ai utiliser moi
Sub nn()
Dim DerLin As Integer
Dim i As Integer, j As Integer, k As Integer, l As Integer, m As Integer, n As Integer, o As Integer
Dim L1 As Integer, L2 As Integer, L3 As Integer, L4 As Integer, L5 As Integer, L6 As Integer, L7 As Integer
DerLin = Worksheets("Recup_absences").Range("C" & "65536").End(xlUp).Row
'renvoyer a Range("b2")le numero de la ligne ou se trouve bonvalet quentin
L1 = 0
For i = 24 To DerLin
If Range("C" & i).Value = "BONVALET Quentin" Then
L1 = i
Exit For
End If
Next
Range("b2") = L1 - 23
''renvoyer a Range("b3")le numero de la ligne ou se trouve CHRISTEN Arnaud
L2 = 0
For j = 24 To DerLin
If Range("C" & j).Value = "CHRISTEN Arnaud" Then
L2 = j
Exit For
End If
Next
Range("b3") = L2 - 23
''renvoyer a Range("b4")le numero de la ligne ou se trouve JACQUIOT Fabien
L3 = 0
For k = 24 To DerLin
If Range("C" & k).Value = "JACQUIOT Fabien" Then
L3 = k
Exit For
End If
Next
Range("b4") = L3 - 23
''renvoyer a Range("b5")le numero de la ligne ou se trouve BRUNE Guillaume
L4 = 0
For l = 24 To DerLin
If Range("C" & l).Value = "BRUNE Guillaume" Then
L4 = l
Exit For
End If
Next
Range("b5") = L4 - 23
'renvoyer a Range("b6")le numero de la ligne ou se trouve Thibault KERNIN
L5 = 0
For m = 24 To DerLin
If Range("C" & m).Value = "Thibault KERNIN" Then
L5 = m
Exit For
End If
Next
Range("b6") = L5 - 23
''renvoyer a Range("b7")le numero de la ligne ou se trouve Jerome CRIBIER
L6 = 0
For n = 24 To DerLin
If Range("C" & n).Value = "Jerome CRIBIER" Then
L6 = n
Exit For
End If
Next
Range("b7") = L6 - 23
''renvoyer a Range("b9")le numero de la ligne ou se trouve Jerome CRIBIER
L7 = 0
For o = 24 To DerLin
If Range("C" & o).Value = "Valentin BENRAMDANE" Then
L7 = o
Exit For
End If
Next
Range("b9") = L7 - 23
End Sub
EDIT : Ajout des balises de code
je viens d'avoir un code qui peut etre le debut de la solution mais je ne sais pas si je suis dans la bonne voie ou nn, aussi j'ai un problme
le probleme c que moi je veux comparer par rapport au contenu de la cellule (1,1) et pas x
ici il verifie dans la colonne C si il existe "x" et puis renvoyer le message a range("b1")
alors que je veux qui il verifie plutot le contenu de x qui se trouve dans la cellule(1,1)
merci de me repondre
Sub cca()
For i = 1 To 100
x = Cells(1, 1).Value
If Cells(i, 3).Value Like "*x*" Then Range("b1") = "Le mot ""x"" existe dans la cellule A1."
Next
End Sub
le probleme c que moi je veux comparer par rapport au contenu de la cellule (1,1) et pas x
ici il verifie dans la colonne C si il existe "x" et puis renvoyer le message a range("b1")
alors que je veux qui il verifie plutot le contenu de x qui se trouve dans la cellule(1,1)
merci de me repondre
RE BONJOUR
j'ai trouve un code dans ce forum ("cs_Le Pivert" m'as aide ) mais ce code il ne fonctionne que si une le prenom est totalement miniscule (il commence pas par une lettre majuscule)
voici le code de "cs_Le Pivert"
pouvez vous m'aider a l'adapter pour que ca marche mm si la premiere lettre de prenom est en majuscule
merci
j'ai trouve un code dans ce forum ("cs_Le Pivert" m'as aide ) mais ce code il ne fonctionne que si une le prenom est totalement miniscule (il commence pas par une lettre majuscule)
voici le code de "cs_Le Pivert"
Sub For_X_to_Next_Ligne()
Dim FL1 As Worksheet, NoCol As Integer
Dim maj As String
Dim NoLig As Long, Var As Variant
Set FL1 = Worksheets("Feuil1") 'adapter nom de la feuille
NoCol = 1 'lecture de la colonne A
For NoLig = 2 To 23
Var = FL1.Cells(NoLig, NoCol)
maj = majuscules(Range("A" & NoLig))
Var = Replace(Var, maj, "")
FL1.Cells(NoLig, NoCol).Value = maj & " " & Var
Next
Set FL1 = Nothing
End Sub
Public Function majuscules(zone)
Dim sel As Object
Dim i As Integer
Application.Volatile
For Each sel In zone
For i = 1 To Len(sel)
If Asc(Mid(sel, i, 1)) > 64 And Asc(Mid(sel, i, 1)) < 91 Then
majuscules = majuscules & Mid(sel, i, 1)
End If
Next i
Next sel
End Function
pouvez vous m'aider a l'adapter pour que ca marche mm si la premiere lettre de prenom est en majuscule
merci
ca n'as pas marche , peut être je me suis mal exprime
je vais essayer d’être un peu plus claire :
les "nom prenom" qui seront enregistres dans les colonnes A des fois on les trouve different de ceux qui sont enregistrés dans les colonne C du cercle 5, exemple :
dans la cellule A2 j'enregistre le nom prénom " CRIBIER Jerome"
mais dans la colonne C29 on le voit qui enregistre inversement "Jerome CRIBIER"
ou encore celuis enregistre dans la cellule C29 est un peu different par exemple :
dans la colonne A2 je vais enregistrer " CRIBIER Jerome"
mais dans la colonne C29 on trouve "Jerôme CRIBIER" avec le o de Jerome qui est ecrit ô
c pour ca c n 'as pas marche et donc il me faut un code je pense qui permet de :
on eregistre des "NOM Prenom" dans les colonne A et le code va chercher ce "NOM Prenom"et/ou "Prenom NOM" ( il tient pas compte de l'ordre nom prénom ), et il renvoie lu numero de la ligne a la colonne B (de la meme ligne ou on a enregistrer le nom prenom colonne A )
jespers vraiment que tu pourra maider je nai vraiment besoin
merci
Par contre... ici on ne fourni pas de code à la demande..... (mais on veut bien aider à le faire).
Donc commence par nous montrer ce que tu as commencé à faire et explique sur quel point tu bloques exactement.
Si tu n'as rien commencé (par méconnaissance du langage) je t'invite à aller consulter des tutos sur le langage VBA.
Par exemple :
https://silkyroad.developpez.com/VBA/DebuterMacros/
Et
https://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/
Et pour les recherches.. tu peux utiliser la méthode FIND
https://forums.commentcamarche.net/forum/affich-37621992-methode-find-dans-vba-recherche-de-donnees-sous-excel