XL 2016 Dépasser les 32767

Bavu-style

XLDnaute Nouveau
Bonjour,
Je suis en train de créer un tableau concernant l'enregistrement des stagiaires pour mes futures formations.
Le problème que je rencontre, c'est que sur le menu déroulant, je n'arrive pas à y faire rentrer toutes les villes de France et reste bloquer à 32767 villes.
Qui aurait une solution pour y rentrer les 35910 ?
D'avance merci.
 

pierrejean

XLDnaute Barbatruc
Bonjour
Menu déroulant ??? listbox liste de validation
Une copie de ton fichier avec les seuls élément relatifs aux communes nous permettrait peut-être de résoudre ton problème
 

JHA

XLDnaute Barbatruc
Bonjour à tous,

Pourquoi ne pas subdiviser les villes par départements, dans le menu déroulant, on choisit le département puis la ville.

JHA
 

Bavu-style

XLDnaute Nouveau
Désolé je ne maitrise pas tout le vocabulaire, c'est le menu qui se crée avec la fonction "validation des données".
Voici un extrait du fichier.
 

Fichiers joints

CHALET53

XLDnaute Barbatruc
Bonjour
Une approche pour contourner :
En I7, Tu saisis la première lettre (ou les premières) et ta liste proposée commence par ces lettres
Si tu saisis un Z, les communes suivantes sont dans la liste
La liste des communes doit être triée par ordre alpha
J'ai nommé la liste des communes : ListeNom
a+
 

Fichiers joints

Dernière édition:

job75

XLDnaute Barbatruc
Bonsoir Bavu-style, Pierre, JHA, CHALET53,

Le fichier joint utilise une ComboBox avec ces codes :
VB:
Dim flag As Boolean 'mémorise la variable

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With ComboBox1
If ActiveCell.Row < 9 Or ActiveCell.Column <> 6 Then .Visible = False: Exit Sub
    .MatchEntry = fmMatchEntryNone
    .Left = ActiveCell.Left
    .Top = ActiveCell.Top
    .Width = ActiveCell.Width + 2
    flag = True
    ComboBox1 = ActiveCell
    If ComboBox1.ListCount = 0 Then ComboBox1_Change 'crée la liste
    flag = False
    .Visible = True
    .Activate
End With
End Sub

Private Sub ComboBox1_Change()
Dim i As Variant
With Feuil1.[A1].CurrentRegion
    .Sort .Columns(1), xlAscending, Header:=xlNo 'tri
    i = Application.Match(ComboBox1 & "*", .Columns(1), 0)
    If IsError(i) Then ComboBox1 = "": Exit Sub
    ComboBox1.List = .Cells(i, 1).Resize(Application.CountIf(.Columns(1), ComboBox1 & "*"), 2).Value
    ActiveCell = IIf(ComboBox1.ListIndex = -1, "", ComboBox1)
    If Not flag Then ComboBox1.DropDown
End With
End Sub
Bonne nuit.
 

Fichiers joints

Bavu-style

XLDnaute Nouveau
Salut,
Comment vous dire ça simplement.......

MMMMMMMEEEEEEERRRRCCCCIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII............................

merci CHALET53 et Job75, les 2 solutions font mon bonheur......
Même si je viens d'apprendre ce qu'était une combobox ^^.

Encore merci à tous.
Le problème est résolu.
 

job75

XLDnaute Barbatruc
Notez qu'il est souhaitable de débarrasser la liste des communes de ses très nombreux doublons.

Menu DONNÉES => Supprimer les doublons.
 

Gardien de phare

XLDnaute Accro
Bonjour,

My two cents... les noms des communes ne sont pas une donnée stable dans le temps, certaines communes disparaissent, surout de puis quelques années avec les communes nouvelles, certaines communes réapparaissent et d'autres changent de nom. Seule l'utilisation des codes communes Insee permet de gérer dans le temps des noms de communes de manière fiable.
 

Discussions similaires


Haut Bas