Faire une recherche dans excel
Résolu/Fermé
goran_84
Messages postés
9
Date d'inscription
mercredi 14 novembre 2012
Statut
Membre
Dernière intervention
28 mai 2013
-
14 nov. 2012 à 15:24
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 18 nov. 2012 à 09:07
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 18 nov. 2012 à 09:07
A voir également:
- Faire une recherche dans excel
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Calculer une moyenne sur excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Si et excel - Guide
3 réponses
goran_84
Messages postés
9
Date d'inscription
mercredi 14 novembre 2012
Statut
Membre
Dernière intervention
28 mai 2013
14 nov. 2012 à 15:27
14 nov. 2012 à 15:27
A savoir que j'utilise Excel 2007
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
14 nov. 2012 à 19:08
14 nov. 2012 à 19:08
Bonjour,
Une piste avec seulement le nom de communes ( la recherche cible de plus en plus suivant le nombre de lettres inscrites)
https://www.cjoint.com/?3KothUizTEx
pour les autres renseignements, ce n'est pas bien compliqué (mais pas avec recherchev!!)
donc, donne un extrait de ta base (500 ou 1000 lignes)
Une piste avec seulement le nom de communes ( la recherche cible de plus en plus suivant le nombre de lettres inscrites)
https://www.cjoint.com/?3KothUizTEx
pour les autres renseignements, ce n'est pas bien compliqué (mais pas avec recherchev!!)
donc, donne un extrait de ta base (500 ou 1000 lignes)
pour joindre une pièce mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/ puis copier l'adresse du lien et la coller dans le message de réponse
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 16/11/2012 à 08:57
Modifié par michel_m le 16/11/2012 à 08:57
Bonjour Goran
Ci joint proposition avec le classeur que tu m'as communiqué sur yahoo mail
boulot intéressant compte tenu des 36000 communes !
https://www.cjoint.com/?3KqiLAxDVAh
nota: dans la feiulles "communes, j'ai nommé deux plage: localité (colonne A)et base_fr (colonnes B-D)
Michel
Ci joint proposition avec le classeur que tu m'as communiqué sur yahoo mail
boulot intéressant compte tenu des 36000 communes !
https://www.cjoint.com/?3KqiLAxDVAh
nota: dans la feiulles "communes, j'ai nommé deux plage: localité (colonne A)et base_fr (colonnes B-D)
Michel
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
16 nov. 2012 à 08:54
16 nov. 2012 à 08:54
le classeur étant protégé par mdp
voici les codes
dans le module feuille "recherche (où il y a le textbox"
zt dans un modules standard
voici les codes
dans le module feuille "recherche (où il y a le textbox"
Private Sub TextBox1_Change() Lettre = UCase(TextBox1.Value) Selectionner_communes End Sub
zt dans un modules standard
Public Lettre As String Sub Selectionner_communes() Dim Tcomm(), T_base(), T_out() Dim Critere As String Dim Nbre As Long, Lig As Long, Cpt As Long '------initialisations Range("C5:F37000").Clear If Lettre = "" Then GoTo Fin Critere = Lettre & "*" With Sheets("communes") 'mémorise en RAM les données des communes T_comm = Application.Transpose(Range("localite").Value) 'liste des localités T_base = Range("base_fr").Value 'liste des codes, départements, zone robien 'nombre de communes répondant au critere Nbre = Application.CountIf(Range("localite"), Critere) End With '-----recherche If Nbre = 0 Then GoTo Vide: 'pas de communes répondant au critère 'mémorise tableau des communes répondant au critère ReDim T_out(1 To Nbre, 1 To 4) Cpt = 1 For Lig = 1 To UBound(T_comm) If T_comm(Lig) Like Critere Then T_out(Cpt, 1) = T_comm(Lig) 'commune T_out(Cpt, 2) = T_base(Cpt, 1) 'code commune T_out(Cpt, 3) = T_base(Cpt, 2) 'code departement T_out(Cpt, 4) = T_base(Cpt, 3) 'zone Robien Cpt = Cpt + 1 If Cpt > Nbre Then Exit For 'sortie si le nbre est atteint End If Next '------restitution Application.ScreenUpdating = False With Sheets("Recherche").Range("C5").Resize(Nbre, 4) .Value = T_out .Borders.Weight = xlThin End With Exit Sub '-----gestion erreurs Vide: MsgBox "aucune commune commendant par " & Lettre & " dans la liste ", vbExclamation Exit Sub Fin: End Sub
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
18 nov. 2012 à 09:07
18 nov. 2012 à 09:07
bonjour
classeur modifié suite à mes étourderies habituelles et rectifié ton tableau des codes insee et départements ( les 9 premiers départements); ajouté un bouton de remise à zéro
Avec mes excuses
https://www.cjoint.com/?3KsjhptPSyr
classeur modifié suite à mes étourderies habituelles et rectifié ton tableau des codes insee et départements ( les 9 premiers départements); ajouté un bouton de remise à zéro
Avec mes excuses
https://www.cjoint.com/?3KsjhptPSyr
14 nov. 2012 à 17:28
Quand tu dis
"Or ce que je souhaite faire maintenant c'est de pouvoir faire une recherche qui m'affiche tous les noms de communes qui commencent par les lettres qui ont été saisis. "
tu voudrais afficher toutes les communes qui commencent pa la lettre "L" par exemple et les afficher où ?? dans une boite de dialogue??
Au plaisir
14 nov. 2012 à 19:11
Merci pour l'interet que tu portes a mon "probleme".
Peux importe ou est ce que je vais afficher les commune commencant par P. Il faut juste quelles apparaissent ;)
qu'est ce que tu penses qu'il serait le mieux.
Merci d'avance et bonne soirée
15 nov. 2012 à 07:08
15 nov. 2012 à 09:30
Alors je peux te proposer ce code que j'ai fait pour une appli identique à la tienne
Dans une feuille tu crées un bouton et tu affectes ce code
tu vois qu'a ce stade il faut creer un Userform avec une Zone de texte que tu nommeras
"ZtxtCP"
une Listbox que tu nommeras
"ListboxVilles"
et tu associes le code qui suit à la zonede texte "ZtxtCP"
Bonne continuation
15 nov. 2012 à 17:17