XL 2021 Recherches de valeurs dans deux colonnes

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Constantin

XLDnaute Occasionnel
Supporter XLD
Bonjour à tous,
J'ai déjà demandé à la communauté de m'éclairer sur ce thème. Gbinforme m'a proposé une solution qui correspondait bien à ma requête, malheureusement, je ne pas réussi à l'adapter au fichier joint. Sylvanu m'a montré comment faire avec les commandes d'Excel, c'est bien mais moins rapide qu'avec la solution de Gbinforme (XLD GBF) que je mets en ligne avec mon fichier qui reproduit la page anonymisée du fichier que, in fine, je veux modifier (BD MASSACRE V5). Ayant oublié comment envoyé de façon nominative (donc à Gbinforme et Sylvanu) je m'adresse à la communauté étant bien sûr ouvert à toutes les suggestions.
Bien à vous tous et bon dimanche.
Constantin
 

Pièces jointes

Çà marche presque sauf pour "S"...
De plus, je ne veux effectuer des recherches que sur le nom et le prénom de la feuille "base de données" qui dans mon fichier final n'est qu'une page sur la douzaine qu'il comporte.

Le classeur-joint ne filtre que les noms et prénoms .
constantin.gif
 

Pièces jointes

Dans le code de la feuille "base de données",
vous trouverez une sub "Bld_List" qui vous créera les noms et validation nécessaires .*

VB:
Option Compare Text
Const Row_Data = 4 ' Ligne où commencent les données
Function Bld_List()
    Dim Plage As Range, Cel As Range, Nb_Rows As Long, I As Long
   ' Suppession des noms existants de type Bd_
    On Error Resume Next
    With Me.Names
    For I = .Count To 1 Step -1
        If .Item(I).Name Like "'" & Me.Name & "'!Bd_*" _
        Then .Item(I).Delete
    Next
    End With
    On Error GoTo 0
    
   ' Calcul du nombre de lignes de données
    Nb_Rows = (Cells(Rows.Count, "A").End(xlUp).Row - Cells(Row_Data, "A").Row) + 1
    
    For Each Cel In [E:F].Rows(Row_Data - 1).Cells ' pour Colonnes Nom et Prénom
       ' On crée un nom désignant une plage de données en colonne
        Nameid = "Bd_" & Cel.Address(False, False)
        Set Plage = Cells(Row_Data, Cel.Column).Resize(Nb_Rows)
        Me.Names.Add Nameid, "='" & Me.Name & "'!" & Plage.Address
        Cel.Interior.Color = 3969910
       ' on définit une listes de validation à partir du nom créé
        With Cel.Validation
            .Delete
            .Add Type:=xlValidateList, Formula1:="=" & Nameid
        End With
    Next
End Function
 
Chapeau l'artiste ! Et c'est sincère !
Tout fonctionne à merveille et Goto_site positionne parfaitement les cases désirées sauf pour C qui se positionne en C5 au lieu de C4. J'ai beau essayer de comprendre Goto-Site, je n'y arrive pas.
Il me faut maintenant réussir à exporter ces données vers mon fichier complet... Et comme je ne sais pas créer des User_forms (text ou combo box), j'ai bien du mal à avancer.
Par ailleurs je ne saisis pas le rôle de cette macro :
Private Sub Del_Module()
With ActiveWorkbook.VBProject.VBComponents
For I = .Count To 1 Step -1
Select Case True
Case .Item(I).Type <> 1
Case .Item(I).CodeModule.CountOfLines > 0
Case Else: .Remove .Item(I)
End Select
Next
End With
End Sub

Vous faites tous un super travail que je suis trop nul pour en profiter. C'est désespérant...
Bonne nuit !
 
Chapeau l'artiste ! Et c'est sincère !
Tout fonctionne à merveille et Goto_site positionne parfaitement les cases désirées sauf pour C qui se positionne en C5 au lieu de C4. J'ai beau essayer de comprendre Goto-Site, je n'y arrive pas.
Il me faut maintenant réussir à exporter ces données vers mon fichier complet... Et comme je ne sais pas créer des User_forms (text ou combo box), j'ai bien du mal à avancer.
Par ailleurs je ne saisis pas le rôle de cette macro :
Private Sub Del_Module()
With ActiveWorkbook.VBProject.VBComponents
For I = .Count To 1 Step -1
Select Case True
Case .Item(I).Type <> 1
Case .Item(I).CodeModule.CountOfLines > 0
Case Else: .Remove .Item(I)
End Select
Next
End With
End Sub

Vous faites tous un super travail que je suis trop nul pour en profiter. C'est désespérant...
Bonne nuit !
C'est une sub qui détruit les modules vides du code, vu le nombre existant, cela me gavait de devoir tous les parcourir pour retrouver du code...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

A
Réponses
13
Affichages
2 K
A
Retour