Programmation sur excel : rechecher une cellule automatiquement

Programmation sur excel : rechecher une cellule automatiquement - Logiciels - Windows & Software

Marsh Posté le 16-10-2004 à 17:47:06    

Bonjour à tous  :hello:  
J'ai une question à poser pour un ami qui s'essaye à la programmation sous excel (rigolez pas  :lol: ), et il est bloqué pour faire quelquechose, donc si quelqu'un pouvait l'aider ... :jap:
 
Dans une colone, on a une liste ( a, b, c, d, e ).
Comment faire, dans une autre cellule, pour obtenir les coordonnées de l'information (c par exemple) afin de les retraiter ? (utile pour les listes très longues ).
 
Voilà, emrci d'avance pour vos réponses et conseils  :hello:

Reply

Marsh Posté le 16-10-2004 à 17:47:06   

Reply

Marsh Posté le 16-10-2004 à 17:54:12    

il y a un forum "programation" pour ca ...
 
EDIT: si c'est en VBA ca doit etre un truc du genre "ActiveCell.Range"


Message édité par Profil supprimé le 16-10-2004 à 17:55:06
Reply

Marsh Posté le 16-10-2004 à 18:27:45    

Je sais qu'il y a un forum programmation, mais y'a pas de section excel donc je ne voyais pas ou mettre ma question :jap:
C'est pas du vba, c'est du excel, justement :D

Reply

Marsh Posté le 17-10-2004 à 11:48:08    

personne ? :)

Reply

Marsh Posté le 17-10-2004 à 13:00:33    

Voyons voir... je vais me lancer...
Je n'osais pas poster parce que ma réponse me paraissait trop évidente donc je me disais que ça devait être un truc hyper compliqué...
 
Si tu as une info dans la cellule C1 et que tu veux la reporter en D1.
En D1, tu tapes "=c1" (sans les guillemets)
 
Ca répond à ta question ou c'est plus complexe que ça ?

Reply

Marsh Posté le 17-10-2004 à 13:11:17    

Merci d'avoir osé :D
En fait, il cherche à faire le contraire, c'est à dire que si on met un nombre dans chaque cellule, ensuite il coudrait qu'excel lui dise dans quelle cellule se trouve ce nombre ;)
Pour ça il y a la fonction " rechercher" , mais c'est manuel et long, donc il voudrait pouvoir faire ça automatiquement, de manière à réutiliser le contenu de la cellule , dans une formule :jap:
Je sais pas si je suis très clair ... mais j'ai eu du mal à comprendre ce qu'il voulait :lol:

Reply

Marsh Posté le 17-10-2004 à 15:38:15    

il faut qu'il utilise les fonctions INDEX et EQUIV

Reply

Marsh Posté le 17-10-2004 à 17:48:27    

Oui, d'accord...
 
Je suppose aussi que la formule sera différente selon le nombre trouvé dans la cellule ?  :D ... histoire de compliquer un peu...  :D  
 
Il a aussi comme solution d'utiliser une formule de condition.
Genre : =si(d1<=3;d1+1;d1+2)
Il peut même remplacer D1 par D:D, comme ça il écrit la formule une fois et elle fonctionne pour toutes les lignes.  ;)  
 
Tiens nous au courant !
 
Edit : ... remplacer D1 par "D,deux points,D" ; saleté de smilie !


Message édité par bob84 le 17-10-2004 à 17:49:59
Reply

Marsh Posté le 21-10-2004 à 12:35:41    

Merci pour vos réponses :)
bob84, les si ne peuvent s'emboiter que 7 fois, il lui fauit bcp + , les fonctions index et equiv sont meilleures apparement :jap:
Par contre il se retropuve avec de nouveaux pb :
-comment faire pour qu'excel ne renvoie pas une erreur quand il ne trouve pas de resultat avec une recherche, mais essaye par exemple de faire une recherche à un autre endroit?
-Il n'arrive à faire des recherches que par ligne, pas par matrice, comment tester aussi les colones automatiquement ?
Sinon, combien de feuilles excel peut on créer, avec un seul fichier ?
Merci d'avance :)

Reply

Marsh Posté le 21-10-2004 à 18:40:20    

Citation :

-comment faire pour qu'excel ne renvoie pas une erreur quand il ne trouve pas de resultat avec une recherche, mais essaye par exemple de faire une recherche à un autre endroit?


 
 avec un "=SI(ESTERREUR(......); "
 
256 feuilles dans un classeur excel je croit

Reply

Marsh Posté le 21-10-2004 à 18:40:20   

Reply

Marsh Posté le 21-10-2004 à 19:10:36    

ok, merci beaucoup :)
Et pour l'autre question ? :D  
Sinon, si tu t'y connais un peu en programmation, vu que mon pote utilise excel car il ne connait rien d'autre, y'a t'il des languages de programmation qui soient vraiment simples d'aces, et mieux qu'excel ? :lol:

Reply

Marsh Posté le 21-10-2004 à 22:04:41    

etant donnée que la fonction EQUIV ne te renvoie qu'un chiffre correspondant au rang où il a trouvé la valeur recherchée, tu ne peut l'utiliser dans une matrice a moins d'imbriquer des EQUIV de plusieurs colonnes dans le style :
 
=SI(ESTERREUR(EQUIV(4;D9: D15;1));"pas trouvée";EQUIV(4;E9:E15;1))
 
dans ce cas là, si le premier test, cherchant la valeur 4 dans D9: D15, renvoie une valeur d'erreur, il cherche dans E9:E15.
 
Mais bon, c'est lourd et tres limité en nombre de colonnes.
 
Par contre en VBA ( Visual Basic "inclu" dans Excel ) tu fait ca en 2 sec :
 
Sub cherche_valeur()
  valtest = InputBox("entrez la valeur à rechercher" )
  For Each c In [A1:f12]
         If c Like valtest Then
             c.Select
              Exit Sub
         End If
     Next
     MsgBox "Pas de " & valtest & " dans la plage testée !"
 End Sub

 
et je t'assure que c'est un language tres simple et surtout incorporé a EXCEL , tres gros avantage !
 
tu peut meme y inclure des API windows, j'ai meme réussi à faire un PacMan avec, ca te donne une idées des possibilités de VBA :D


Message édité par Profil supprimé le 21-10-2004 à 22:05:36
Reply

Marsh Posté le 21-10-2004 à 22:42:29    

la fonction rechercheV , rechercheH ??

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed