Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2901 connectés 

 

 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  29  30  31  ..  111  112  113  114  115  116
Auteur Sujet :

[Topic Unique] Excel : Keep calm and Pivot Table !

n°2967970
Zaphod
Posté le 04-11-2010 à 15:16:58  profilanswer
 

Reprise du message précédent :
Il y a une fonction SOMME.SI()
Qui est très pratique ;)

Message cité 1 fois
Message édité par Zaphod le 04-11-2010 à 15:17:21
mood
Publicité
Posté le 04-11-2010 à 15:16:58  profilanswer
 

n°2967992
wildseuil
Posté le 04-11-2010 à 16:19:13  profilanswer
 

Zaphod a écrit :

Il y a une fonction SOMME.SI()
Qui est très pratique ;)


Yes! Thanks Bonne soirée

n°2968031
Asegard
Posté le 04-11-2010 à 19:54:28  profilanswer
 

Bon.. dernier truc et logiquement je vous embête plus :D

 

Je cherche à la base à additionner automatiquement les chiffres que je rentre dans une cellule de ma feuille.

 

Sur le net j'avais trouvé la macro suivante:

 
Code :
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. If Target.Column = 1 And Target.Count = 1 Then
  3.    Application.EnableEvents = False
  4.    ValSaisie = Target
  5.    Application.Undo
  6.    Target = ValSaisie + Target
  7.    Application.EnableEvents = True
  8. End If
  9. End Sub


Marchait bien, mais ne fonctionnait que sur la colonne A, et on ne pouvait pas supprimer si besoin le contenu des cellules concernés.

 

Avec votre aide on a fini par faire la formule suivante, qui permet de faire l'addition dans n'importe quelle cellule, et de supprimer son contenu si besoin:

 
Code :
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2.     Application.EnableEvents = False
  3.     valsaisie = Target
  4.     If (valsaisie <> VK_DELETE) Then
  5.         Application.Undo
  6.         Target = valsaisie + Target
  7.     End If
  8.     Application.EnableEvents = True
  9. End Sub
 


Avec le premier exemple que j'avais trouvé sur le net, une deuxieme macro était proposée, qui permettait elle de garder l'historique des valeurs saisies dans les cellules, et qui se sont additionnées:

Code :
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. If Target.Column = 1 And Target.Count = 1 Then
  3.    Application.EnableEvents = False
  4.    If [mémo] <> "" Then
  5.      If Left([mémo], 1) <> "=" Then
  6.         Target.Formula = "=" & [mémo] & "+" & Target
  7.      Else
  8.         Target.Formula = [mémo] & "+" & Target
  9.      End If
  10.    End If
  11.    Application.EnableEvents = True
  12. End If
  13. End Sub
  14. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  15.   If Target.Column = 1 And Target.Count = 1 Then
  16.     ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) & Target.Formula & Chr(34)
  17.   End If
  18. End Sub
 

Ce que je voudrai, c'est pouvoir cumuler ces deux macro à la suite sur la meme feuille, pour que mon addition se fasse en gardant l'historique.
J'ai supprimé le "If Target.Column = 1 And Target.Count = 1 Then" pour que ça ne concerne pas que la colonne 1, mais apres je sais pas vraiment comment l'intégrer à la suite de la 1ère, et surtout la faire fonctionner.

 

Est ce qu'il n'y a pas besoin de l'adapter plus que ça pour qu'elle fonctionne avec la 1ère qu'on a modifié ici, ou est ce qu'elle est liée à la 1ère version que j'avais trouvé, et dans ce cas comment l'adapter ?

 

Merci à vous :jap:


Message édité par Asegard le 04-11-2010 à 19:56:48
n°2968047
kensiko26
Posté le 04-11-2010 à 20:49:59  profilanswer
 

Tu veux stocker l'historique des données entrées à quel endroit ? Si c'est dans une autre feuille, c'est plutôt facile, suffit d'ajouter Sheets("autrefeuille" ).Cells(Dernière ligne + 1, colonne) = valsaisie


Message édité par kensiko26 le 04-11-2010 à 20:50:41
n°2968063
Asegard
Posté le 04-11-2010 à 22:14:05  profilanswer
 

L'idéal, c'est de ne les stocker nul part :D

 

En fait sur la dernière formule que j'ai mis, que j'ai trouvé d'origine avec la toute première, les infos sont stockés dans la cellule elle meme

 

Exemple:
A1, je rentre le chiffre 1
Si je rentre le chiffre 3, la cellule affiche comme résultat 4, l'addition a bien été faite.
Dans la barre de formule, ça indique '=1+3"

 

Donc en fait, l'historique des saisies est affichée dans la formule de la cellule, mais seul le résultat est affiché dans la cellule


Message édité par Asegard le 04-11-2010 à 22:14:27
n°2968084
kensiko26
Posté le 04-11-2010 à 23:49:03  profilanswer
 

Ah ! Mais la formule ne peut pas s'étendre éternellement.

n°2968085
Asegard
Posté le 04-11-2010 à 23:50:57  profilanswer
 

Ah non mais il y aurai au maximum 5 ou 6 addition dans la meme cellule

n°2968106
gocho
Posté le 05-11-2010 à 00:41:19  profilanswer
 

Code :
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2.     Application.EnableEvents = False
  3.     If (Target <> VK_DELETE) Then
  4.         If [mémo] <> "" Then
  5.             If Left([mémo], 1) <> "=" Then
  6.                 Target.Formula = "=" & [mémo] & "+" & Target
  7.             Else
  8.                 Target.Formula = [mémo] & "+" & Target
  9.             End If
  10.         End If
  11.     End If
  12.     Application.EnableEvents = True
  13. End Sub
  14. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  15.   If Target.Column = 1 And Target.Count = 1 Then
  16.     ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) & Target.Formula & Chr(34)
  17.   End If
  18. End Sub
 

En fait, pour la petite explication, il y un nommage de la cellule (nom = mémo) à chaque sélection d'une cellule.
Ensuite, tout le travai est fait sur cette cellule (si mémo contient déjà une valeur, on le complète avec la nouvelle valeur, en affectant un calcul à sa propriété "formule". D'où le fait que le résultat s'affiche.

 

La solution ci dessus est testée et fonctionne (normalement...)

 

Edit : en revanche, si tu sélectionne une cellule dans une autre colonne que la première, le mémo est conservé (c'est dû au test de la premiere colonne, mais j'ai pas bien compris si tu voulais l'enlever là aussi). Et si tu saisis une valeur, ca va te faire un calcul qui ne devrait pas avoir lieu...
Si tu souhaites pouvoir faire ton calcul avec historique sur n'importe quelle cellule, alors ta 2e fonction devient :

Code :
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.      ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) & Target.Formula & Chr(34)
  3. End Sub


Message édité par gocho le 05-11-2010 à 01:00:36
n°2968172
SuppotDeSa​Tante
Aka dje69r
Posté le 05-11-2010 à 12:37:04  profilanswer
 

Perso, sur Excel 2003 si je mets Application.EnableEvents = False dans un evenement (par exemple ici Change) ca me désactive les évènements tout le temps. Et il ne passe pas dans Application.EnableEvents = True ce qui est génant...
 
Avec cette solution, le Application.EnableEvents = False etant dans un Sub, pas de souci :

Code :
  1. Dim Val, Val2, ColCell, RowCell
  2. Private Sub Worksheet_Change(ByVal Target As Range)
  3. If Target <> VK_DELETE Then
  4.     ColCell = Target.Column
  5.     RowCell = Target.Row
  6.     Val2 = Target
  7.     Call MEF(RowCell, ColCell)
  8. End If
  9. End Sub
  10. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  11.      Val = Target.Formula
  12. End Sub
  13. Sub MEF(Col, Row)
  14. Application.EnableEvents = False
  15. If Val2 < 0 Then Signe = "" Else Signe = "+"
  16. If Val <> "" Then
  17.      If Left(Val, 1) <> "=" Then
  18.        
  19.         Cells(RowCell, ColCell).Formula = "=" & Val & Signe & Val2
  20.      Else
  21.         Cells(RowCell, ColCell).Formula = Val & Signe & Val2
  22.      End If
  23.    End If
  24. Application.EnableEvents = True
  25. End Sub


 
Et ca gère aussi si tu mets un nombre négatif
 
:jap:
 
Donc si je tape :
10
30
-15
10
-12
J'ai bien : 23
Avec en formule : =10+30-15+10-12


Message édité par SuppotDeSaTante le 05-11-2010 à 12:45:40

---------------
Soyez malin, louez entre voisins !
n°2968185
Asegard
Posté le 05-11-2010 à 14:39:17  profilanswer
 

Et bah voila, que du bonheur, merci à vous deux :)
 
par contre avec la dernière formule dje69r, j'ai mis 2 dans une cellule, puis j'ai ajouté 2.15, et là erreur, c'est uniquement le 2.15 qui s'affiche, et sur VB il renvoi à la ligne:
 
Cells(RowCell, ColCell).Formula = Val & Signe & Val2
 
Apparemment il a pas aimé quelque chose

mood
Publicité
Posté le 05-11-2010 à 14:39:17  profilanswer
 

n°2968189
gocho
Posté le 05-11-2010 à 14:58:06  profilanswer
 

Il faut que tu saisisses tes nombres décimaux avec le point (shift + point virgule).
Les saisir avec la virgule ou le point du clavier numérique ne fonctionne pas ici.
Pour une raison qui m'échappe d'ailleurs...
 
edit : le point (shift + ; ) fait un point, un vrai.  
alors que les deux autres solutions font une virgule.  
Si Excel affiche pourtant une virgule, il me semble que c'est une convention d'affichage particuliere française.
Dans les autres pays (il me semble), les virgules servent au séparateur des milliers.
D'où l'erreur je pense.
 
edit2 : en plus, les fonctions de dje69r ne passent pas par une zone de nom (ce qui ne fait que rajouter du code pour pas grand chose).
C'est pas plus mal :)

Message cité 1 fois
Message édité par gocho le 05-11-2010 à 15:11:03
n°2968206
SuppotDeSa​Tante
Aka dje69r
Posté le 05-11-2010 à 16:46:45  profilanswer
 

Hey les gars vous poussez un peu non ? :p
C'est quand meme simple de remplacer une virgule par un point...
 

Citation :

Sub MEF(Col, Row)
Application.EnableEvents = False
Val2 = Replace(Val2, ",", "." )
If Val2 < 0 Then Signe = "" Else Signe = "+"
 
If Val <> "" Then
     If Left(Val, 1) <> "=" Then
         
        Cells(RowCell, ColCell).Formula = "=" & Val & Signe & Val2
     Else
        Cells(RowCell, ColCell).Formula = Val & Signe & Val2
     End If
   End If
Application.EnableEvents = True
End Sub


---------------
Soyez malin, louez entre voisins !
n°2968750
Xxxaaavvv
Posté le 09-11-2010 à 16:18:19  profilanswer
 

gocho a écrit :

Il faut que tu saisisses tes nombres décimaux avec le point (shift + point virgule).
Les saisir avec la virgule ou le point du clavier numérique ne fonctionne pas ici.
Pour une raison qui m'échappe d'ailleurs...
 
edit : le point (shift + ; ) fait un point, un vrai.  
alors que les deux autres solutions font une virgule.  
Si Excel affiche pourtant une virgule, il me semble que c'est une convention d'affichage particuliere française.
Dans les autres pays (il me semble), les virgules servent au séparateur des milliers.
D'où l'erreur je pense.
 
edit2 : en plus, les fonctions de dje69r ne passent pas par une zone de nom (ce qui ne fait que rajouter du code pour pas grand chose).
C'est pas plus mal :)


 
 
Excel se base sur tes paramètres régionaux pour notament :
- le séparateur décimal ("," pour la France, "." pour les USA)
- le séparateur des milliers (" " pour la France, "," pour les USA)
- et aussi le séparateur de liste qui sert dans quasiment toutes les formules :D
(";" pour la France, "," pour les USA il me semble)
 
VBA, (et VB) fonctionne en interne en USA
 
 
 


Message édité par Xxxaaavvv le 09-11-2010 à 16:20:42
n°2969908
Asegard
Posté le 18-11-2010 à 12:36:04  profilanswer
 

J'avais un peu délaissé mon tableau et je n'avais pas vu la réponse :/
 
Merci pour la formule et l'explication, tout fonctionne bien sur ce que je viens de tester, juste un petit bug apparemment mais qui n'empeche pas vraiment l'utilisation:
 
Quand j'efface une cellule qu'il y ai du texte ou des chiffres, des fois j'ai un code d'erreur et sur la macro la ligne "If Target <> VK_DELETE Then"  
 
C'est pas bien grave mais je ne sais pas d'où ca vient, j'utilise bien cette touche pour effacer le contenu des cellules

n°2976228
ddsjm
Posté le 07-01-2011 à 08:32:10  profilanswer
 

Bonjour,
 
Je travail actuellement sous Excel 2003 et j'essaye de réaliser ceci :
 
Je souhaiterais avoir des listes déroulantes dans la colonne Valeurs (feuille1) qui pointent vers les différentes valeures possible pour chaque option. La liste complète des valeures pour chaque option étant listée en feuille 2. Elles sont nommées "Choix 1", "Choix 2",... pour l'exemple.
Lorsque je choisirai une valeur d'option, il faudrait que les attributs listés sur la même ligne en feuille 2 apparaissent en feuille 1.
 
Voici la structure de mon fichier Excel :
 
Feuille 1 :
 
Options     Valeurs     Attribut 1     Attribut 2     ...
Opt1         Choix 1     25              toto            ...
Opt2         Choix 3     titi              tata            ...
...
 
Feuille 2 :
 
Options     Valeurs     Attribut 1     Attribut 2      ...
Opt1         Choix 1     25              toto             ...
Opt1         Choix 2     12              alpha             ...
Opt2         Choix 1     8                tata             ...
Opt2         Choix 2     titi              toto             ...
Opt2         Choix 3     titi              tata             ...
...
 
Je vous remercie d'avance pour vos réponses,
 


---------------
Mon vieux feedback :)
n°2976234
wildseuil
Posté le 07-01-2011 à 09:49:40  profilanswer
 

Pour afficher la "Valeur" en ayant saisi l' "option", tu fais un truc de ce genre :
 
=INDEX([colonnederéférence_Valeurs];EQUIV([option_recherchée];[colonnederéférence_option];0);1)
 
avec [colonnederéférence_??] tes colonnes dans ta feuille2 et [option_recherchée], la case de la feuille1 contenant l' "option" dont dont tu cherches la "valeur".

n°2976255
kensiko26
Posté le 07-01-2011 à 12:59:05  profilanswer
 

Ta liste déroulante tu peux l'avoir dans les objets dans les barres d'outil.

n°2976616
Guigui
Posté le 10-01-2011 à 11:40:14  profilanswer
 

:hello:  je tourne un peu en rond sur un truc la, j'arrive pas a faire simple.
 
J'ai un tableau comme ca :
 


Nom     Type     Val1    Val2
Toto       A       10       3
Tata       A       12       5
Tutu       B       17       2
 


Je cherche a faire la moyenne de Val1 ponderee par Val2 avec un critere sur Type.
Par exemple :
 

Type      Moyenne
    A        11,25
    B           17

 
Sans critere c'est simple, mais avec je seche un peu.  :??:
En fait il faudrait un somme.produit.si quoi


Message édité par Guigui le 10-01-2011 à 11:41:00
n°2976639
kensiko26
Posté le 10-01-2011 à 14:21:19  profilanswer
 

Tu peux faire une formule du style si(condition, moyenne(...), nil) avec une fonction matricielle (quand on appuie sur Maj+Enter). Sinon y'a aussi dAverage (en français je sais plus c'est quoi) mais c'est pénible son utilisation.

Message cité 1 fois
Message édité par kensiko26 le 10-01-2011 à 14:21:54
n°2976642
kensiko26
Posté le 10-01-2011 à 14:32:58  profilanswer
 

Ah dans Excel 2010 je vois qu'il existe moyenne.si !! C'est bon ça.

 

Si tu as un autre Excel, je viens de réaliser que c'est assez facile si tu ne veux pas faire des fonctions complexes. Tu fais "Somme.Si(Colonne Type, ton type, Colonne moyenne) / Nb.Si(Colonne Type, ton type)".

 

Pour la pondération je suppose que ça serait plus simple d'ajouter une colonne Val3 donnant Val1 * Val2 et de faire Somme.Si(Colonne Type, ton Type, Colonne Val3) au lieu de Nb.Si(Colonne Type, ton type)

Message cité 1 fois
Message édité par kensiko26 le 10-01-2011 à 14:36:30
n°2976655
Guigui
Posté le 10-01-2011 à 15:41:00  profilanswer
 

kensiko26 a écrit :

Tu peux faire une formule du style si(condition, moyenne(...), nil) avec une fonction matricielle (quand on appuie sur Maj+Enter). Sinon y'a aussi dAverage (en français je sais plus c'est quoi) mais c'est pénible son utilisation.


je suis en Anglais aussi  :D

 

dAverage ne fais pas de ponderation, en fait c'est juste un sumif / countif  [:mr marron derriere]

 

Par contre je ne pense jamais aux fonctions matricielles, et en effet c'est justement la que ca marche ! Merci c'est nickel avec un :
{=sum(if(B1:B4=cond,C2:C4*D2:D4,0))/sum(if(B1:B4=cond,D2:D4,0)}
 :love:

kensiko26 a écrit :

Ah dans Excel 2010 je vois qu'il existe moyenne.si !! C'est bon ça.

 

Si tu as un autre Excel, je viens de réaliser que c'est assez facile si tu ne veux pas faire des fonctions complexes. Tu fais "Somme.Si(Colonne Type, ton type, Colonne moyenne) / Nb.Si(Colonne Type, ton type)".

sans ponderation c'est simple en effet, ca marche aussi avec daverage.

 
Citation :

Pour la pondération je suppose que ça serait plus simple d'ajouter une colonne Val3 donnant Val1 * Val2 et de faire Somme.Si(Colonne Type, ton Type, Colonne Val3) au lieu de Nb.Si(Colonne Type, ton type)

je voulais eviter ca car j'ai quelques dizaines de valeurs a moyenner en fait, donc ajouter une colonne a chaque fois c'est pas glop (je suis deja a la colonne VD sur ce fichier  [:ddr555] )


Message édité par Guigui le 10-01-2011 à 15:41:27
n°2976657
kensiko26
Posté le 10-01-2011 à 15:56:33  profilanswer
 

Parfait, n'oublie pas d'ajouter l'argent à tes adresses de cellules :P

n°2977040
Le Chtra
Posté le 12-01-2011 à 18:08:34  profilanswer
 

Salut à tous !  
 
petit préambule : je n'avais jamais mis les mains dans le cambouis Excelle-macro-VBA avant ce jour...    
 
mon problème : je dois transformer un fichier excel en fichier de données XML.  
j'ai trouvé une méthode pour faire le mappage XML, copier les données, etc. tout ça fonctionne très bien...  
 
J'ai donc enregistré une macro histoire d'automatiser le travail :  
- j'ouvre le fichier excel nommé "test.xml" qui se trouve dans son dossier test  
- je lance la macro qui l'enregistre en tant que "test.xml" dans le dossier "test".  
 
problème : si je lance la macro sur un autre fichier (ex: "client1.xls" ), il se trouve renommé en "test.xml"  et toujours dans le dossier "test" alors que je voudrais qu'il se nomme "client1.xml" dans son dossier "client1".  
 
je sais que ça doit se passer dans VBA... mais alors où et comment ?  
comment signifier à la macro de rester dans son propre dossier, un peu comme un chemin relatif en language html ?.

n°2977061
kensiko26
Posté le 12-01-2011 à 19:03:20  profilanswer
 

Tu dois voir le code. Tu as enregistré une macro mais ça ne rend pas le code intelligent. Tu dois faire ton propre code.
 
La ligne servant à sauvegarder contient .SaveAs ..., cette commande permet de définir l'emplacement où tu veux sauvegarder ainsi que le type de fichier.

n°2977233
watercooli​ng
Posté le 13-01-2011 à 22:19:12  profilanswer
 

bonjour j'ai un graphique en histogramme , j'aimerais pouvoir relier chaque colonne par une courbe pour représenter l'évolution ca fait 3 heures que je cherche  voila mon travail actuel  
 
 
[img]http://img825.imageshack.us/img825/7939/histo.jpg
 
Uploaded with ImageShack.us[/img]


Message édité par watercooling le 13-01-2011 à 22:21:00
n°2977244
kensiko26
Posté le 14-01-2011 à 00:13:28  profilanswer
 

Sous Excel 2002 on pouvait ajouter d'autres séries de données de type graphique différent. Je sais pas quelle version que tu as, mais si c'est 2002 tu peux ajouter une série et choisir son type. Laisses-moi savoir et je t'expliquerai.


Message édité par kensiko26 le 14-01-2011 à 00:13:49
n°2977245
watercooli​ng
Posté le 14-01-2011 à 00:48:56  profilanswer
 

c'est le 2010

n°2977310
kensiko26
Posté le 14-01-2011 à 14:09:40  profilanswer
 

Ok et bien Excel 2007-2010 n'est pas aussi flexible. Il faut chercher. Tu as cherché sur google ? En anglais y'a souvent plus de résultats.

n°2978858
Zaphod
Posté le 24-01-2011 à 13:13:56  profilanswer
 

Bonjour à tous.
 
Ayant constamment pas mal de fichiers Excel ouverts simultanément pour mon boulot, je coche constamment dans les Options d'Excel (2000, sous win xp)
Outils / Options / Affichage  
"Fenêtres dans la barre des taches"
De manière à pouvoir aller facilement d'un fichier à un autre.
 
Mais au bout d'un certain temps (quelques jours), l'option se décoche toute seule...
Est-ce que quelqu'un connait une façon de forcer cette option à restée cochée ?

n°2978957
kensiko26
Posté le 25-01-2011 à 00:55:41  profilanswer
 

J'ai jamais vu ce problème.

n°2979031
Etudiant75​1
Posté le 25-01-2011 à 17:32:31  profilanswer
 

Résolu


Message édité par Etudiant751 le 04-09-2014 à 16:04:37
n°2979044
kensiko26
Posté le 25-01-2011 à 19:06:54  profilanswer
 

Tu veux dire que tu veux empiler les heures ? Tu vas devoir créer de nouvelles colonnes pour ça qui vont soustraire de l'ancienne heure. Tu vas aussi avoir besoin que ça soit en ordre, il existe des formules pour remettre en ordre (faire un sort).

n°2979112
Etudiant75​1
Posté le 26-01-2011 à 11:28:28  profilanswer
 

Résolu


Message édité par Etudiant751 le 04-09-2014 à 16:05:04
n°2979131
kensiko26
Posté le 26-01-2011 à 14:38:10  profilanswer
 

Je voudrais bien t'aider mais je ne sais pas comment tu veux avoir ton graphique. Tu veux plusieurs barres verticales  ? Qu'est-ce qui est empilé ??
 
Fais un dessins stp :)

n°2979238
LaGuiche
Posté le 27-01-2011 à 11:29:20  profilanswer
 

Bonjour à tous !
 
Je viens vous trouver car j'ai besoin d'un coup de pouce sur un de mes tableau et je trouve pas la solution :(
 
Le tableau en question :  
http://img716.imageshack.us/img716/1644/cidimage001png01cbbe14.png
 
En fait, je souhaiterais que lorsque un des trois champs "volume" soit remplis, je récupère la valeur afin de m'en servir pour les calculs de dilutions juste en dessous (et si plusieurs champs sont rempli, que ça renvoi une erreur une quelque chose du genre).
 
Y a une façon simple de faire ça ? j'ai fais plusieurs essais avec SI et OU mais sans résultat :??:
 
Merci pour vos réponses :)


---------------
[Mon Feed-Back]  
n°2979333
kensiko26
Posté le 27-01-2011 à 19:47:44  profilanswer
 

À première vu je ferais ça avec plusieurs SI oui.
 
Premièrement, tu vérifies si t'as une seule valeur entrée.
 
si(Nb(cases 1 à 3) = 1, ..., "Erreur!!!" )
 
Ensuite, ce serait plus simple de mettre dans 3 autres cases les volumes en une seule unité, système international si possible. Pour le calcul de dilution, tu fais simplement la somme de ces 3 valeurs.
 
Tu peux toujours le faire sans remplir les 3 autres cases, mais ça va être pas mal compliqué comme formule.

n°2979334
LaGuiche
Posté le 27-01-2011 à 19:50:32  profilanswer
 

Oui en fait je crois que c'est un peu compliqué mon truc, puisque il faudrait qu'une des trois case sois rempli mais si c'est la case "gallon" ou "oz" faut faire la conversion dans mL (ou passer par une autre formule) puis faire le calcul de dilutions. Je crois que jvais abandonner :D


---------------
[Mon Feed-Back]  
n°2979345
kensiko26
Posté le 27-01-2011 à 21:46:16  profilanswer
 

C'est pas compliqué avec ma méthode. Mais bon c'est toi qui choisit.

n°2979346
LaGuiche
Posté le 27-01-2011 à 21:58:33  profilanswer
 

Oui mais sauf que j'ai rajouter une condition
 
Le calcul de dilutions s'effectue qu'avec une base en mL donc si la case mL est rempli, tout va bien.
Si c'est une des deux autres case, il faut détecter la case remplie puis il faut effectuer la conversion en mL donc c'est plus compliqué non :??:


---------------
[Mon Feed-Back]  
n°2979347
The_chosen​_one
There can only be one !
Posté le 27-01-2011 à 22:03:10  profilanswer
 

Bah non ce qu'il veut dire c'est simplement de faire :
mL + oz * conv + gallon * conv


Message édité par The_chosen_one le 27-01-2011 à 22:04:16
n°2979352
LaGuiche
Posté le 27-01-2011 à 22:59:21  profilanswer
 

Ah oui ok, la je suis tout a fait d'accord, mais ma question est : comment je formule ça sous excel ? :??:
Enfin surtout pour exprimer le OU, la conversion ça a la limite c'est subsidiaire ^^


Message édité par LaGuiche le 27-01-2011 à 22:59:57

---------------
[Mon Feed-Back]  
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  29  30  31  ..  111  112  113  114  115  116

Aller à :
Ajouter une réponse
 

Sujets relatifs
[EXCEL] Faire une mise à jour dynamique de valeur entre champsExcel : rechercher et afficher une liste
[EXCEL] Conversion/multiplication de massequestions sur la téléphonie avec free en 512k
Excel: Comment insérer automatiquement un titre à chaque page ?[excel] largeur de colonne différente
[Excel] (N00B Inside :-/ )Je veux additionner ...2 questions urgentes : Remplacer Photoshop et achat de scanner
changer la police par défaut sous Excel[Excel] Comment faire pivoter une feuille ?
Plus de sujets relatifs à : [Topic Unique] Excel : Keep calm and Pivot Table !


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)