[excel] Aide recherche

Résolu/Fermé
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 - 4 juin 2008 à 02:42
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 - 9 juin 2008 à 22:49
Bonjour,
Pour poursuivre sur un topic qui a été verouillé, j'ai besoin d'un coup de main pour excel.
Le fichier qui pose probleme est ici: http://www.cijoint.fr/cjlink.php?file=cj200806/cij8j1VDiR.zip
Je souhaite que quand je selectionne une option dans la cellule F5 de la feuille "vehicules", les cellules G5 et H5 se remplissent en fonction des données situés dans les colonnes B,G et H de la feuille "Hommes"; qui biensur oblige a faire une recherche, j'ai esayé mais pas reussi.
Ensuite je souhaite utiliser les données correspondant a la colonne A de la feuille vehicule pour les remettre dans la bonne ligne dans la feuille hommes, colonne I
En esperant avoie été clair...
A voir également:

13 réponses

Raymond PENTIER Messages postés 58777 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 24 décembre 2024 17 258
4 juin 2008 à 05:31
Salut.

Ta formule en J11 comporte 3 erreurs :
1) la matrice de recherche est mal choisie ; tu as choisi J1:K9 de l'onglet Vehicules, alors que les données sont stockées dans l'onglet Hommes ; il faut y ajouter le nom "Pompier" pour la zone B4:H53
2) tu fais appel à la colonne 11, alors que pour la cellule G5 (spé.1) il faut appeler la sixième colonne de la matrice "Pompier", et la septième pour la cellule H5 (spé.2)
3) il vaut mieux mettre FAUX au lieu de VRAI, car tu n'es jamais sûr que ta liste de référence en première colonne (colonne B) est bien triée

En G5 la bonne formule est =RECHERCHEV(F5;Pompier;6;0)
En H5 la bonne formule est =RECHERCHEV(F5;Pompier;7;0)

Attention : Si la liste des pompiers est complétée, s'assurer que la matrice "Pompier" englobe tout le monde !
0
Raymond PENTIER Messages postés 58777 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 24 décembre 2024 17 258
4 juin 2008 à 05:42
"Ensuite je souhaite utiliser les données correspondant a la colonne A de la feuille vehicule pour les remettre dans la bonne ligne dans la feuille hommes, colonne I "

Là, je n'ai pas compris ce que tu cherches à faire ...
0
Ivan-hoe Messages postés 433 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 17 octobre 2008 309
4 juin 2008 à 05:56
Bonjour Perrus, merci pour ce cas pratique sur des camions de pompiers !
Bonjour Raymond, comment vont les Antilles ?
il me semble que la seconde question consiste à rapatrier dans Hommes!I4 le véhicule de chaque pompier.
Cette formule devrait faire l'affaire :
I4 =INDEX(Vehicules!A:A;EQUIV(B4;Vehicules!F:F;0))
pour éviter les #N/A :
I4 =SI(ESTNA(EQUIV(B4;Vehicules!F:F;0));"-";INDEX(Vehicules!A:A;EQUIV(B4;Vehicules!F:F;0)))
I.
0
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222
4 juin 2008 à 15:06
Deja, merci de votre aide!!
Pour raymond, merci, mais sa met met #NOM? dans la cellule G5, et pareil en H5
Pour Ivan, meme probleme :S (si je place le pompier dans un vehicule, sinon "-")
Pour info, cliquez sur la banniere ou c'est ecrit "Secteur 18", vous n'allez pas etre decu!!
0
Raymond PENTIER Messages postés 58777 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 24 décembre 2024 17 258
5 juin 2008 à 01:19
Tu as certainement mal sélectionné ta matrice pour la nommer.
Fais-moi voir la version actuelle de ton fichier.
0
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222 > Raymond PENTIER Messages postés 58777 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 24 décembre 2024
5 juin 2008 à 05:31
Voila: http://www.cijoint.fr/cjlink.php?file=cj200806/cijm7ulika.zip.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222
4 juin 2008 à 19:04
Sinon j'ai une macro qui ne fonctionne pas
voici le bout de code qui ne marche pas:
Cette macro est sur la feuille Budget, et cette partie doit agir sur la feuille "hommes"

Sheets("Hommes").Select
Dim lmax As Long, lmax1 As Long
Dim cel As Range
' recherche dernière ligne
lmax = [C65536].End(xlUp).Row
lmax1 = [D65536].End(xlUp).Row
If lmax1 > lmax Then lmax = lmax1
lmax1 = [E65536].End(xlUp).Row
If lmax1 > lmax Then lmax = lmax1
If lmax = 1 Then Exit Sub
' decrémenter cellules
'moral
For Each cel In Range("C4:C" & lmax)
If IsNumeric(cel) And cel > 0 Then cel.Value = cel.Value - 0.02
Next cel
'santé'
For Each cel In Range("D4:D" & lmax)
If IsNumeric(cel) And cel > 0 Then cel.Value = cel.Value - 0.03
Next cel


Merci
0
Attention : Si la liste des pompiers est complétée, s'assurer que la matrice "Pompier" englobe tout le monde !

Faut peut-être lire de temps en temps ce qui est écrit...
0
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222
4 juin 2008 à 19:25
Ok, maintenant j'ai #N/A dans G5 et H5 de la feuilles "vehicules"
Toujours un probleme avec la formule d'ivan
Et pour la macro?
0
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222
4 juin 2008 à 21:43
Personne pour m'aider?
0
Ivan-hoe Messages postés 433 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 17 octobre 2008 309
5 juin 2008 à 11:05
Bonjour Perrus,
1°) pour les formules en Véhicules!G5 et Véhicules!H5
je te promets que la formule donnée par Raymond est la bonne, mais il faut bien définir la zone Pompier (B4:H53)
Pour ne pas avoir à la modifier quand tu rajoutes des pompiers, définis-la comme Hommes!B:H
Sinon, modifie les formules comme suit :
Véhicules!G5 = RECHERCHEV($F5;Hommes!$B:$H;6;FAUX)
Véhicules!H5 = RECHERCHEV($F5;Hommes!$B:$H;7;FAUX)

2°) pour la formule en Hommes!I4 qui rappelle le véhicule de chaque pompier, reprend celle donnée dans le post 3.
Attention : quand on fait un copier/coller à partir de CCM, parfois, il y a des caractères indésirables qu apparaissent. C'est sans doute ce qui s'est passé.
Vérifie bien la dernière partie de ta formule : à la fin tu as -F:(F) au lieu de F:F

3°) quant à ton bout de code, il marche très bien chez moi : il m'a baissé le moral de tous mes pompiers de 2 points, et leur santé de 3 points.
Peux-tu préciser le problème que tu as avec ce code ?

4°) ton site Secteur 18 a l'air super ! Mais je n'ai pas trouvé comment participer au bal des pompiers ;-)
A suivre...
0
Raymond PENTIER Messages postés 58777 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 24 décembre 2024 17 258
5 juin 2008 à 13:57
Bonjour, perrus53.
Dans mon post 1 je t'indique :
" 1) la matrice de recherche est mal choisie ; tu as choisi J1:K9 de l'onglet Vehicules, alors que les données sont stockées dans l'onglet Hommes ; il faut y ajouter le nom "Pompier" pour la zone B4:H53 "
Or, pour une raison qui m'échappe, c'est à la colonne H:H que tu donnes ce nom !
La matrice est un tableau dans lequel en colonne 1 on a le critère de recherche, et dans les autres colonnes sont stockées les données à récupérer.
Comment veux-tu qu'Excel trouve la colonne 6 d'un tableau qui n'a qu'une colonne, ou retrouve ton critère de recherche "Audrey" dans une colonne H:H qui ne contient que tes formules de RECHERCHEV ?
0
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222
5 juin 2008 à 15:58
ok merci beaucoup de m'avoir aidé; je n'avais pas compris le systeme de matrice, et je lisai mal; desolé
Pour la recherche sa fonctionne (pour les deux), mais la macro est placée dans la feuille budget (bouton changement de jour), mais elle agit sur cette feuille alors qu'elle devrait agir dans pompiers
Un enorme merci pour votre patience!!
0
Ivan-hoe Messages postés 433 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 17 octobre 2008 309
7 juin 2008 à 07:19
Salut Perrus,
pour ta macro qui agit sur Budget au lieu de Hommes, essaie donc avec les modifications suivantes (en faisant systématiquement référence à la feuille Hommes avec With Sheets("Hommes") ... End With) . N'oublie pas le point rajouté avant chaque Range.

Private Sub CommandButton2_Click()
'argent'
[c8] = [c9].Value
'date'
Range("G12").Formula = "=NOW()"
'moral+santé'
With Sheets("Hommes")
    .Select
 Dim lmax As Long, lmax1 As Long
 Dim cel As Range
    ' recherche dernière ligne
    lmax = .[C65536].End(xlUp).Row
    lmax1 = .[D65536].End(xlUp).Row
    If lmax1 > lmax Then lmax = lmax1
    lmax1 = .[E65536].End(xlUp).Row
    If lmax1 > lmax Then lmax = lmax1
    If lmax = 1 Then Exit Sub
    ' decrémenter cellules
        'moral
    For Each cel In .Range("C4:C" & lmax)
        If IsNumeric(cel) And cel > 0 Then cel.Value = cel.Value - 0.02
    Next cel
    'santé'
    For Each cel In .Range("D4:D" & lmax)
        If IsNumeric(cel) And cel > 0 Then cel.Value = cel.Value - 0.03
    Next cel
End With

End Sub
0
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222
9 juin 2008 à 13:18
Ok merci pour les deux (l'explication et la solution!!)
C'est mieu, comme sa je comprends ce que je tape, et c'est mieu pour reutiliser ensuite.
J'essaie ce soir, en attendant je met en resolu!!
0
perrus53 Messages postés 1012 Date d'inscription samedi 2 février 2008 Statut Membre Dernière intervention 29 novembre 2014 222
9 juin 2008 à 22:49
Sa fonctionne impecable!!
Merci beaucoup!!
Rendez vous sur http://secteur18.com !!
0