Vba recherche selection copier coller

gabotch16 -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je vais expliquer mon problème directement :

j'ai dans une feuille1 une matrice reprsentant en ligne 1 des villes
en colone 1 ces meme villes et dans les cellules entre cette ligne et cette colone g le nbre de km entre ses villes comme si dessous:

villes bordeaux auxere lyon marseille grenoble
bordeaux 0 61 37 59 88
auxere 61 0 36 103 78
lyon 37 36 0 103 123
marseille 59 103 103 0 99
grenoble 88 78 123 99 0

comment faire pour que lorsque je rentre le nom de la ville dans une cellule d'une autre feuille (feuille 2), apparaisse les villes ayant un ecart inf a 50km avec la ville rentré!!

par exemple si je tape lyon j'aurais dans les cellules en face :

bordeaux 37
auxere 36

j'espere être clair
merci

4 réponses

  1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,
    exemple sur la ligne 1 de B1 à K1 le nom des villes et sur la colonne A de A2 à A20 également le nom des villes A1 est vide
    ensuite tu peux créer deux listes déroulantes pour sélectionner tes villes, une en M1 pour les villes de la colonne A et un en O1 pour les villes de la ligne A2 à K2

    =INDEX($B$2:$K$20;EQUIV($M$1;$A$2:$A$20);EQUIV($O$1;$B$1:$K$1))

    ou plus court

    =RECHERCHEV(M1;A1:K20;EQUIV(O1;A1:K20))
    0
    1. gabotch16
       
      nan pas possible, je veux que c donnés apparaissent directement dans l'autre feuille sans avoir a rentré dans la feuille de base.

      Et je veux juste avoir a rentrer la ville pour qu' apparaisse les villes les plus proches (<50km) avec le nombre de km d'écart avce la ville en question
      0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    bonjour
    sans macro je ne sais pas faire
    avec macro voir si le fichier joint repond un peu a la question

    http://www.cijoint.fr/cjlink.php?file=cj201012/cijVAKxQC1.xls

    bonne suite
    0
    1. gabotch16
       
      je viens de me rendre compte que dans ta macro les résultats données ne sont pas bon il y a un décalage qui se fai entre les villes et les distances!!?
      0
    2. ccm81 Messages postés 11033 Statut Membre 2 434
       
      re
      desole

      une petite modif a faire dans le code

      If (d > 0 And d <= dmax) Then
            li = li + 1
            v = .Range("Tville").Cells(c, 1).Value     
            Cells(Premli + li - 1, 1).Value = v
            Cells(Premli + li - 1, 2).Value = d
      End If

      bonne suite
      0
  3. gabotch16
     
    merci beaucoup c exactement se qu'il mefallait !!!!

    encore merci ccm81

    à bientot
    0
  4. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Je n'ai pas pu répondre plus tôt, ma solution avec une simple formule

    http://www.cijoint.fr/cjlink.php?file=cj201012/cijLd4PADz.xls

    0
    1. ccm81 Messages postés 11033 Statut Membre 2 434
       
      bonsoir Mike-31
      excel a encore beaucoup de mysteres pour moi mais avec des solutions comme ça, ça avance, ça avance ...
      cordialement
      0
    2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Salut Ccm,

      Je pense qu'Excel est sans limite ou presque, c'est un outil merveilleux qui réserve à tous les utilisateurs des surprises à découvrir.

      Cordialement

      Mike-31
      0