Recherche v

cindymini Messages postés 15 Statut Membre -  
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Voici une trame pour faire la facturation, je souhaite qu'a la sélection d'un client, la recherche V s'effectue dans la base de prix correspondante.

Ci joint le fichier

Pouvez vous m'aider SVP??

https://www.cjoint.com/?3BjpCknoYny

9 réponses

  1. m@rina Messages postés 27636 Date d'inscription   Statut Modérateur Dernière intervention   11 566
     
    Bonjour

    Voici ma solution :

    Tu donnes un nom différent pour chaque plage Matériaux située dans chacun de tes onglet de clients.

    Dans la base Clients, tu ajoutes une colonne dans laquelle tu donnes le nom de la plage Matériaux spécifique à ce client.

    Ensuite, dans ta facture, dans tes formules RECHERCHEV, tu remplaces le nom en dur le nom de la base "Matériaux" par un autre RECHERCHEV qui cherche le nom de la plage dans la colonne ajoutée de ta base client.
    ex :
    https://www.cjoint.com/?CBjqexScoLu

    Une autre solution si tu as peu de clients serait de faire une formule avec des SI dans une cellule quelconque afin d'avoir pour résultat le nom de la plage Matériaux du client en fonction de son Numéro.
    Ensuite dans tes formules RECHERCHEV, tu remplacerais le nom de la base "Matériaux" par une formule INDIRECT qui irait chercher le nom de la plage dans la cellule en question.

    m@rina
    1
  2. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    et pourtant... elle devrait fonctionner en ajustant les champs nommés à la, demande.
    Toutefois, au cas où une autre option ici:
    https://www.cjoint.com/?CBjrH7xss7n
    A notre que pour qu'elle fonctionne, les noms de feuilles ont été modifiés
    L'explication est dans le fichier.
    crdlmnt
    1
  3. cindymini Messages postés 15 Statut Membre
     
    Merci pour ton aide

    A bientôt

    La première solution me parait la plus simple.....
    0
  4. cindymini Messages postés 15 Statut Membre
     
    cependant cela ne fonctionne pas....

    Avez vous d'autres propositions

    Merci
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. cindymini Messages postés 15 Statut Membre
     
    MERCI beaucoup!!!!!!!!!!! çà marche

    Je voudrais également ceci :

    Les client de 101 a 510 sont des professionnels ou des particuliers que je vais créer au fur et a mesure.

    De ce fait, l'intégralité de ces clients ont la même base de prix qui se nomme PRO PARTICULIER.

    Puis je lui dire que de 101 à 510 il faut aller dans BDP PRO PARTICULIER à partir du numéro client.

    MERCI

    CINDYMINI

    http://cjoint.com/data3/3BjsGyewOne_ebauche_facture_07022010.xls
    0
    1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
       
      Alors dans ce cas, deux solutions,
      soit on complique la formule de recherche, soit on construit l'adresse dans une cellule hors champ de la feuille Facture
      Pour éviter des formules à s'arracher les cheveux, je vous conseille si vous le pouvez la second solution soit:
      prenez par exemple la cellule G1 de la feuille facture et inscrivez cette formule, en respectant bien tous les signes

      =SI(E12>100;"'BDP pro particulier'!A1:K1000";"'BDP "&$D$14&"'!A1:K1000")

      Cette cellule G1 peut se trouver sur n'importe quelle feuille.

      Elle vous écrira l'adresse du champ auquel il faut s'adresser et dans ce cas dans les formules de recherche, il faut corriger comme suit

      remplacer

      INDIRECT("'BDP "&$D$14&"'!A1:K1000")

      tout simplement par:

      INDIRECT($G$1)

      Faite bien attention aux signes, comme d'hab

      Ca devrait marcher , (si j'ai bien compris)

      Ce qui se passera:
      des N° 1 à 100 inclus, les formules vont s'adresser à la feuille client dont le nom est en D14
      au dessus de 100 , les formules s'adresseront à la feuille BDP pro particulier


      Crdlmnt
      0
  7. cindymini Messages postés 15 Statut Membre
     
    Bonsoir,

    J'ai recopié la formule comme décrite, cependant je ne sais pas si c'est l'heure tardive ou si vraiment je suis nul mais quand je mentionne le client 101 j'ai une erreur et je n'arrive pas à accéder au BDP PRO PARTICULIER quand je remplace par $G1$

    Merci de me dire ou se trouve mon erreur???

    https://www.cjoint.com/?3BjwwpwNOnz
    Cordialement
    0
  8. cindymini Messages postés 15 Statut Membre
     
    j'ai également une autre question, comment ne plus afficher le message d'erreur valeur dans mes cellules??

    Merci
    0
  9. cindymini Messages postés 15 Statut Membre
     
    j'ai trouver pour enlever la notation valeur :

    =SI(ESTERREUR(D37*E37);"";(D37*E37))
    0
  10. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour cindymini

    Vos erreurs:

    en G1 , dans la première condition, le nom de la feuille est mal écrit, vous pouvez le voir dans le texte affiché en G1 si vous placer un N° supèrieur à 100 en E12:

    dans la formule 1° condition , entre les guillemets
    ___placer l'apostrophe devant BDP
    ___enlever le point d'exclamation derrière BDP et le remplacer par un blanc

    dans les formules de recherche il ne s'agit pas de remplacer D14 par G1, mais tout l'ensemble de INDIRECT() et donc écrire simplement:
    INDIRECT(G1)

    Enfin, pour l'affichage valeur vous pouvez faire plus simple en écrivant
    =SI(A20="";"";E20*D20)
    qui n'affichera rien tant qu'il n'y a pas de code en A

    crdlmnt

    Errare humanum est, perseverare diabolicum
    0