Contrôle des Noms propres

Bonsoir

J'ai une liste de noms en colonne sur 2500 lignes. Je souhaiterais les contrôler. Existe t il un moyen pour faire un contrôle ?

Cordialement

Claude

Hello jag8308,

Vous voila bien mystérieux Merci de fournir un fichier test, même anonymisé ainsi qu'expliciter votre demande : contrôler quoi ? doublon ? existence ?

Bonjour

Mille excuses pour seulement de vous répondre aujourd'hui.

Donc le fichier joint donne une idée des données relevés dans les actes accessibles en ligne. Je les collecte pour alimenter une base de donnée qui est consultable par tout le monde qui ferait des recherches sur des personnes de famille ou autres.

Pour contrôler les Prénoms j'utilise la touche F7. Mais pour les noms je ne connais de méthode (EXCEL 2007)L 2007 pour savoir contrôler si les noms que j'ai relevé sont bien orthographié.

Gendre d'erreur de frappe Nom correct GENDRON et rentrer GNEDRON ou GENDORN par exemple; BERNARD ------> BERANRD.

Je peux constituer une liste de nom avec ceux que j'ai déjà relevé et

8essais.zip (378.46 Ko)

que je pourrais alimenter au fur et à mesure que je relève des nouveaux noms

J'espère avoir été clair

Cordialement

Claude

Bonjour à tous,

J'ai bien peur (Si j'ai bien compris) que vôtre demande soit impossible. En effet les noms en France non pas d'orthographe Vous pouvez très bien vous appeler Raimond, Raimont, ou Raimon, de ce fait comment voulez-vous pouvoir le vérifier.

Même sur les prénoms ça reste très litigieux....

Bonjour

Pour les prénoms je les ajoute au fur et à mesure.

Merci

bonjour jag8308, salut Jean-Paul,

voir feuil2

colonne D = valeurs unique qui sont inconnues

colonne G:... ligne, colonne et adresse, de la cellule avec nom inconnu + contenu de la cellule + nom inconnu

dans la macro on a cette ligne, si vous voulez ignoner une colonne, vous pouvez l'ajouter ici.

              Case 1 To 9, 19 To 99, 45, 47, 49 'liste avec toutes les colonnes à ignorer
    
8essais.zip (709.45 Ko)

Bonjour à tous,

Bon je pense avoir compris, pour cela nous devons utiliser : La distance de Levenshtein.

J'ai modifier vos tableaux pour les passer en tableaux structurés. Je vous laisse libre de remettre vos couleurs.

J'ai retirer certaines ligne de code qui formataient les colonnes prénom et Epoux/Père/Défunt, je les ai remplacées par des MFC c'est plus interactif.

Bien entendu plus vôtre tableau en feuille deux sera fournis meilleurs seront les retours.

ps Pour tester dans la colonne Nom du tableau de la feuille 1 changer le nom "Martin" par "Marti" bien entendu cette méthode à ses limites concernant les propositions de noms.

Une nouvelle version qui tient compte de plusieurs résultats de recherche. A tester avec un nom 'Dupon'

12essais-v1-1.zip (364.52 Ko)

Merci à tous

Bonne journée

Bonjour à tous,

Merci à tous

C'est tout ? Même pas un retour pour savoir si cela correspond à vôtre demande, Hé bien ça donne envie de vous aider à nouveau...

Bonjour Jean paul

Mille excuses car je viens de tester ton travail.

- Pour les nouveaux noms je dois les ajouter à la liste, faut il trier de nouveau la liste après avoir rentré un nom ?

- De plus j'ai la majuscule du nom de la mère ne fonctionne plus ...?

- Y-a-t-il moyen que quand j'ai fini la ligne, le pointeur ne revienne pas dans la cellule du n° de vue mais dans la cellule Jour ?

cordialement

Bonjour à tous,

@jag8308 Tous d'abord comment remplissez-vous le formulaire ? D'après le code vous devez faire du copier coller de toute la ligne.

Si ce n'est pas le cas et que vous remplissez la ligne du tableau cellule par cellule on peux faire quelque chose.

Ne serait-il pas plus intéressant de passer par un formulaire ? Du moins pour remplir une partie (Les cellules les plus importantes du tableau.).

Sinon :

Pour les nouveaux noms je dois les ajouter à la liste, faut il trier de nouveau la liste après avoir rentré un nom ?

Normalement non, ils sont traités séquentiellement, donc ce n'est pas la peine.

De plus j'ai la majuscule du nom de la mère ne fonctionne plus ...?

Je peux regarder cela...

Y-a-t-il moyen que quand j'ai fini la ligne, le pointeur ne revienne pas dans la cellule du n° de vue mais dans la cellule Jour ?

Tout d'abord répondez aux questions ensuite nous adapterons le code en conséquence.

bonjour,

l'hortographe c'est pas ma tasse de thé.

Voici un exemple avec un fichier qui contient tous les prénoms usités à l'état civil français. il permet d'identifier si il s'agit bien d'un prénom.

https://excel-downloads.com/threads/separer-nom-et-prenom-dune-listbox-dans-2-textbox.20084592/post-...

Bonjour à tous,

- De plus j'ai la majuscule du nom de la mère ne fonctionne plus .

Pour corriger cela sous le Cas 1 ajouter comme montré ci-dessous, la ligne : Target.Value = UCase(Target.Value)

        ' -----------------------MODIFICATIONS EFFECTUEES PAR VALTRASE
        ' Modification du NOM dans la colonne J, M, O ou Q
        If Not Intersect(Range("J:J,M:M,O:O,Q:Q"), Cel) Is Nothing Then
            ' Désactiver les évènements pour la modification (sinon boucle infinie)
            Application.EnableEvents = False
            ' Appel de la fonction
            Dim ResultatRecherche As Variant
            ResultatRecherche = RechercherApproximationNom(Target.Value)

            If TypeName(ResultatRecherche) = "String" Then
                ' CAS 1 : Correspondance EXACTE trouvée
                Target.Value = UCase(Target.Value)

            ElseIf IsArray(ResultatRecherche) Then
                ' CAS 2 : Une ou plusieurs approximations trouvées (le résultat est un tableau)
                If UBound(ResultatRecherche) = 0 Then
                    ' CAS 2.a : Une seule meilleure approximation
                    Dim ReponseMsgBox As VbMsgBoxResult

                    ReponseMsgBox = MsgBox("Valeur non trouvée. Vous vouliez peut-être dire """ & ResultatRecherche(0) & """ ?" & vbCrLf & vbCrLf & "Cliquer sur OUI pour corriger la cellule.", _
                                           vbYesNo + vbQuestion, "Suggestion de Correction")

                    If ReponseMsgBox = vbYes Then
                        Target.Value = ResultatRecherche(0) ' Correction directe
                    End If

                Else
                    ' CAS 2.b : Plusieurs meilleures approximations
                    With New UserForm1
                        .tabListNames = ResultatRecherche   ' Passer le tableau des candidats
                        .Show
                        If .selectedName <> vbNullString Then
                            Target.Value = .selectedName
                        End If
                    End With
                    Unload UserForm1
                End If

            Else
                'NOTE "Do nothing
            End If

            Application.EnableEvents = True
        End If

        ' Si saisie en J -> Mettre en O
        If Not Intersect(Range("J:J"), Cel) Is Nothing Then
            ' Désactiver les évènements pour la modification (sinon boucle infinie)
            Application.EnableEvents = False
            ' Ajouter le nom du père en O
            Range("O" & Cel.Row).Value = UCase$(Cel.Value)
            ' Réactiver les évènements pour la suite
            Application.EnableEvents = True
        End If

        ' Modificatin du Prénom dans la colonne K, N, P ou R
        If Not Intersect(Range("K:K,N:N,P:P,R:R"), Cel) Is Nothing Then
            ' Désactiver les évènements pour la modification (sinon boucle infinie)
            Application.EnableEvents = False
            Cel.Value = Application.WorksheetFunction.Proper(Cel)
            Application.EnableEvents = True
        End If
    Next Cel

Finally:
    Application.EnableEvents = True
    Exit Sub

Catch:
    ' // Do something.
    MsgBox "Oupss... Nous avons rencontré une erreur : " & Err.Number & _
           " (" & Err.Description & ") dans la procédure Worksheet_Change du Document VBA sys_Data"

    Resume Finally

End Sub

Y-a-t-il moyen que quand j'ai fini la ligne, le pointeur ne revienne pas dans la cellule du n° de vue mais dans la cellule Jour ?

Très bonne question votre code est déjà assez alambiqué, vous ne trouvez pas ? Cela peut se faire mais du coup beaucoup de problème pour vous et pour modifier les cellules de la colonne N° Jour. Cela en vaut-il la peine ?

@dysorthographie Je pense ne pas me tromper en disant qu'il recherche une manière de voir si le nom est bien orthographier. Exemple PONTOIZAEU au lieux de PONTOIZEAU dans ce cas le calcul de la distance de Levenshtein est je pense la meilleure solution. Cela pourrait être adapté aux prénoms avec votre tableau si pas trop long au vu du traitement fait.

Bonjour

Je suis un peu perdu dans vos propositions d'amélioration

1 le formulaire de saisie dans ce cas quels éléments avez-vous besoin ? Je préférerais avoir un formulaire sous forme de tableau comme mon modèle avec quelques modification qui inclurai de nouvelles fonctions.

- Du style si l'âge est < à 20 ans dès que je valide le pointeur passe de l5 à P5.directement

- Quand la naissance est dit naturel : après avoir saisie le nom en J5 il est inscrit automatiquement Inconnu en O5 (Nom du père) et en Q5 le nom saisi pour la mère. Mais cela demande d'ajouter une colonne pour entrer N (N naturel).

C'est des choses auquel je pense ...........

Par contre je ne sais pas comment remettre le sujet en désactivant la validation ?

Bonne journée

Cordialement

Bonjour à tous,

1 le formulaire de saisie dans ce cas quels éléments avez-vous besoin ? Je préférerais avoir un formulaire sous forme de tableau comme mon modèle avec quelques modification qui inclurai de nouvelles fonctions.

On pourrait faire un formulaire utilisateur avec les principales entrées : Date de naissance, nom, prénom, ect. (A vous de voir la liste complète

- Du style si l'âge est < à 20 ans dès que je valide le pointeur passe de l5 à P5.directement

Là je ne vous suit pas du tout. Avons nous le même fichier ?

image

Où se trouve la colonne avec les dates de naissances ? car pour moi quand vous dites 'dès que je valide le pointeur passe de l5 à P5.directement'' cela ne correspond pas (Voir image ci-dessus)

- Quand la naissance est dit naturel : après avoir saisie le nom en J5 il est inscrit automatiquement Inconnu en O5 (Nom du père) et en Q5 le nom saisi pour la mère. Mais cela demande d'ajouter une colonne pour entrer N (N naturel).

Là encore vous devez être sûr de ce que vous voulez car cela décale tout le code des évènement Change de la feuille...(Mais cela peut être fait)

Par contre je ne sais pas comment remettre le sujet en désactivant la validation ?

Si vous n'y arrivez pas refaite un sujet, tout simplement. Vous pourrez mettre le lien à la fin de cette discussion, pour que l'on ne cherche pas.

Bonsoir Jean-Paul

Je pense que je dois revoir ma copie complète pour que vous puissiez proposer un modèle. Si vous le permettez je vais clôturer le sujet et créer un autre avec plus d'infos et des exemples celà sera plus facile pour vous

Merci beaucoup pour votre aide

Cordialement

Claude

Rechercher des sujets similaires à "controle noms propres"