Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/11/2010, 12h04   #1
Invité de passage
 
Inscription : novembre 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 20
Points : 3
Points : 3
Par défaut Aide pour formule

bonjour,

Voilà j'utilise Excel mais je ne sais pas vraiment me servir des formules et là j'aimerai m'en servir pour éviter de retaper les formules de base à chaque fois.

Aors je vais essayer d'être clair:

Dans un classeur j'ai 2 onglets:
- Kit liste
- boitier
Dans Kit liste on trouve 5 colonnes:
col A: code
col B : Face 1
Col C : Face 2
Col D: désignation
Col E: boitier

Dans boitier on trouve :
Col A : boiter
Col B : PPm/cspt (soit une formule qui reprend 1 cellule de col B de kit liste *3 + 1 cellule de col C kit liste *3)

Maintenant, mon but est que Excel mette automatiquement la formule de la col B boitier dans la col F kit, liste si il trouve la même chaine de caractère dans col E kit, liste que dans la Col A boitier (je parle de chaine de caractères car dans la col E ce n'est pas toujours écrit pareil ).

Je ne sais pas si c'est clair, si ça ne l'est pas, dites le moi et je mettrai un fichier joint .

Merci d'avance
karlgina est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2010, 12h58   #2
Membre Expert
 
Femme
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 475
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : juin 2007
Messages : 475
Points : 1 010
Points : 1 010
Bonjour,
Tu peux ajouter dans la colonne F de l'onglet [kit liste] la formule
Code :
=RECHERCHEV(LC(-1), boitier!L1C1:LxC2)
où x est le nombre de lignes de l'onglet boitier.
tedo01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2010, 15h34   #3
Invité de passage
 
Inscription : novembre 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 20
Points : 3
Points : 3
ça ne marche pas
mais je cherche à comprendre L = à ligne et C = colonne

parce que je ne comprend pas grand chose à ta formule
karlgina est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2010, 16h07   #4
Membre Expert
 
Femme
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 475
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : juin 2007
Messages : 475
Points : 1 010
Points : 1 010
Re,

D'abord une correction, il faut ajouter un paramètre à la fonction :
Code :
=RECHERCHEV(LC(-1), boitier!L1C1:LxC2, 2)
Ensuite l'explication :
  • LC(-1) est la référence de boitier à rechercher qui est dans la même ligne (L) et la colonne à gauche (C(-1)) de la formule. Par exemple, si on est ligne 5 colonne 6, la référence du boitier est en ligne 5 colonne 5
  • boitier!L1C1:LxC2 désigne la plage de cellules de l'onglet boitier où on chercher, donc de la première cellule en haut à gauche de la feuille (L1C1=ligne 1 colonne 1) à la dernière (LxC2=ligne x colonne 2, avec x=nombre de lignes)
  • 2 donne le numéro de colonne où se trouve le résultat à ramener dans la plage où on cherche

Est-ce que ça fonctionne mieux en remplaçant x par le nombre de lignes et avec le paramètre supplémentaire ?
tedo01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2010, 19h46   #5
Invité de passage
 
Inscription : novembre 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 20
Points : 3
Points : 3
j'ai un souci ça ne fonctionne pas je t'envoie le fichier en mp

tu me redis ensuite
karlgina est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2010, 20h58   #6
Invité de passage
 
Inscription : novembre 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 20
Points : 3
Points : 3
rectification dans l'onglet boitier dans la colonne ppm/cpst en fait c'est le n)X qui doit y apparaitre.
karlgina est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2010, 22h57   #7
Membre habitué
 
Homme jean maury
Inscription : mars 2009
Messages : 116
Détails du profil
Informations personnelles :
Nom : Homme jean maury
Âge : 42
Localisation : Pologne

Informations professionnelles :
Secteur : Distribution

Informations forums :
Inscription : mars 2009
Messages : 116
Points : 111
Points : 111
Bonjour.

Dans Excel il y a un petit bouton nomme Fx qui permet de choisir la formule qui va bien avec l'aide d'excel par la suite.

Ainsi :
- dans la cellule ou doit se trouver la formule (feuille Kit colonne F), on clique sur le bouton fx
- on choisis dans la liste de toutes les formules la formule RECHERCHEV
- on remplis chaque champ de la boite de dialogue proposee par Excel qui donne toutes les explications. On n'a plus qu'a designer les cellules que l'on veut prendre en consideration en fonction des cas ci-dessous.
- 1ere valeur c'est la valeur a chercher
- 2eme valeur c'est le tableau dans lequel on doit chercher la correspondance de la valeur recherchee
- 3eme valeur c'est la colonne dans laquelle on doit trouver la correspondance

L'ideal, c'est de donner un nom au tableau qui contient toutes les donnees. Ici, c'est le tableau de la feuille "boitier". Ainsi, on selectionne les colonnes A et B et on nomme la selection "boitier". Il suffit pour cela de selectionner en haut a gauche de la barre de formule la valeur indiquee (A1:B65000) et de saisir manuellement le nom que l'on veut donner (ici boitier).

Ensuite, dans la formule on a :
Code :
1
2
 
=RECHERCHEV(LC(-1), boitier, 2)
Avantage de cette solution :
- plus clair (selon moi)
- formule plus courte
- si on deplace la formule dans la colonne de droite, le resultat est toujours correct.

Autre chose, sauf erreur de ma part, pour que le resultat de la formule soit correct, les donnees de la table de base doivent etre triees sur la colonne qui sert de reference (colonne A de la feuille "boitier" ici)

Cdlt.
jj4822 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2010, 23h40   #8
Membre Expert
 
Femme
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 475
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : juin 2007
Messages : 475
Points : 1 010
Points : 1 010
Je viens de regarder ton fichier, et si la recherche du boitier ne doit pas se faire sur la valeur exacte, ce n'est pas possible simplement par une formule, il faudrait écrire une fonction qui fasse un RECHERCHEV mais sur une partie de la valeur. Par exemple :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Public Function ChercheBoitier(objCell As Range, objPlage As Range, lngColonne As Long) As Variant
Dim objLigne As Range
Dim bolTrouve As Boolean
 
    For Each objLigne In objPlage.Rows
        If InStr(objCell.Value, objLigne.Cells(1, 1).Value) > 0 Then
            ChercheBoitier = objLigne.Cells(1, lngColonne).Value
            bolTrouve = True
            Exit For
        End If
    Next objLigne
 
    If Not bolTrouve Then ChercheBoitier = vbNullString
 
End Function
Avec cette fonction dans un module, tu peux ensuite écrire par exemple dans la cellule F2 de l'onglet "kit liste"
Code :
=ChercheBoitier(E2;boitier!$A$2:$C$7;3)
Par contre, dans l'onglet boitiers, je ne comprends pas vraiment ce que tu veux faire...sur quel critère récupères-tu les infos ?
tedo01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/11/2010, 13h24   #9
Invité de passage
 
Inscription : novembre 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 20
Points : 3
Points : 3
dans l'onglet boitier
la colonne A est la taille du boitier
et dans la colonne B c'est le nombre de soudure par composants qui peut apporter des defaults sachant que ça change en fonction du composant (402, sot 23 etc..) exemple : 1 composant 402 sera multiplier par 3 alors qu'1 QFP 100 sera multiplié par 101.

donc la finalité de mon projet est que les 5 colonnes de kit listes soit sujettent à des modifications et que dans la colonne F de kit liste ça me calcule de suite le nombre de défault éventuels en fonction du nombre de composants (Face 1 face 2) que l'on soude.
karlgina est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/11/2010, 23h09   #10
Membre Expert
 
Femme
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 475
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : juin 2007
Messages : 475
Points : 1 010
Points : 1 010
Je pense obtenir ce que tu cherches dans l'onglet "kit liste" avec la formule
Code :
=ChercheBoitier(E2;boitier!$A$2:$C$7;3)*(B2+C2)
dans la cellule F2 par exemple. Est-ce que c'est ce que tu attends ?
tedo01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/11/2010, 21h28   #11
Invité de passage
 
Inscription : novembre 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 20
Points : 3
Points : 3
oui c'est ça
je te remercie pour ton aide ça m'a été précieux

je te souhaite une bonne soirée
karlgina est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h02.


 
 
 
 
Partenaires

Hébergement Web