RechercheV dans une cellule ou l'autre (circulaire)

Bonjour à tous,

Je suis nouveau sur ce site et je tiens à vous dire, avant d'exposer mon problème, qu'ayant découvert ce site récemment, je suis étonné et content de voir une aussi grande communauté d'entraide si active !

Les présentations et les éloges faites, voici mon problème !

Dans mon fichier j'ai créé un tableau en 2 colonnes qui contient respectivement des codes postaux et des noms de villes. J'aimerai créer une fiche clientèle, et voudrais que les deux cellules qui contiendront les coordonnées du client soient automatisées.

Je m'explique :

  • 1. Fonction de LISTE qui pointe vers les codes potaux ou les villes en fonction de la cellule, avec permission de saisir directement du texte
  • 2. Fonction de RECHERCHEV pour un remplissage automatique de la deuxième cellule par rapport à la première

Jusque là, tout va bien. Là où ça se complique, c'est que je voudrais faire en sorte de pouvoir choisir quelle cellule renseigner.

En gros appliquer aux deux cellules les mêmes fonctions. Ainsi je pourrais soit entrer le code postal (manuellement ou via la liste) et la cellule Ville se remplira d'elle-même, soit agir sur la cellule Ville et voir la cellule Code postal se remplir automatiquement.

Je pensais faire une VALIDATION DE DONNES/LISTE sur les deux cellules et rajouter la RECHERCHEV dans la source, en plus du pointeur sur le tableau. Mais je ne trouve pas la bonne syntaxe pour définir deux formules dans la même ligne.

Existe-t-il une solution ou un moyen plus simple (tout en gardant à l'esprit que je ne veux pour l'instant pas de solution avec le VBA).

Je vous remercie de m'avoir lu et attend vos réponses avec impatience !

HK_

21fiche-client.xlsx (11.68 Ko)

Sans vba pas possible puisqu'en changeant manuellement une case tu supprimes sa formule!

Est-il possible dans le champs Source de la validation de données/liste d'entrer plusieurs requêtes ?

J'entend par là tableau source + fonction rercherchev, pour ainsi avoir une cellule avec liste déroulante et fonction recherchev automatique.

liste

En effet, mais il faudra changer l'autre pour l'avoir, ce ne sera pas direct

Ce que tu peux faire c'est mettre ta formule dans une case de ta liste..

La solution de la formule dans une case de la liste me semble un peu compliquée.

Comment puis-je réunir deux formules dans une seule ligne ? (pour tenter la validation à 2 requêtes)

La première case de ta liste contient la rechercheV puis ta liste fera H1:H9 avec en H1 ta recherchev...

Sans vba tu es limité, pourquoi tu mets la contrainte du non vba ?

Je vais essayer de voir ce que je peux faire avec ta première indication. Merci.

Au niveau du vba c'est juste que je veux comprendre ce que je fais. Si je colle bêtement le code, je ne saurai surement pas comment et pourquoi j'ai fais ceci/cela. J'essaie juste de trouver une alternative à mon niveau.

Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    Application.EnableEvents = False
    If Not Intersect(Target, Range("B6:B7")) Is Nothing Then
        Select Case Target.Row
            Case 6
                Range("B7") = Range("H3:H9").Find(Target.Value).Offset(0, 1)
            Case 7
                Range("B6") = Range("I3:I9").Find(Target.Value).Offset(0, -1)
        End Select
    End If
    Application.EnableEvents = True
End Sub

Alors c'est tout simple..

A chaque changement d'une cellule dans ta feuille, si l'intersection entre la cellule que tu as changé et le range B6:B7 n'est pas vide, (c'est à dire que si l'une de ces deux cellules est changée alors je regarde le numéro de la ligne.

Si le numéro de la ligne est 6 alors je cherche dans H3:H9 la valeur de la cellule qui a changé, et je mets dans B7 celle d'acoté

Pas sorcier..

Un peu flou pour l'instant... Mais au moins ça fonctionne ! Je vais bien me pencher là-dessus ce soir et apprendre un peu.

Un grand merci !

Rechercher des sujets similaires à "recherchev circulaire"