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

  FORUM HardWare.fr
  Windows & Software
  Logiciels

  Excel : Formule imbriqué.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Excel : Formule imbriqué.

n°2498365
jcdc
Posté le 25-08-2006 à 11:29:29  profilanswer
 

Bonjour à tous. Voila, je suis en train de travailler sur un tableau Excel très simple. Mais je bloque sur l'optimisation d'une formule.
 
La voici : =SOMME(PRODUIT(A3;D3);PRODUIT(A4;D4);PRODUIT(A5;D5))
 
Le probleme c'est que je dois faire la somme d'une centaine de "PRODUIT(Ax;Dx)". Voila, comment pourais-je donner le X de départ et le X d'arrivé. Merci a tous.

mood
Publicité
Posté le 25-08-2006 à 11:29:29  profilanswer
 

n°2498400
ventilo-hf​r
Posté le 25-08-2006 à 11:57:51  profilanswer
 

Une solution peut consister à créer une fonction personnalisée permettant de faire ce calcul. Ouvrir l'éditeur de macro, dans le menu outils / macro / visual basic editor, une fois l'éditeur lancé dans l'aborescence en haut à gauche faire un clic droit sur le classeur puis choisir insertion puis module. Ouvrir le module et coller le code suivant :
 

Code :
  1. Function MonProduit(iDeb As Integer, iFin As Integer)
  2.    Dim iLoop As Integer
  3.    Dim lSomme As Long
  4.    lSomme = 0
  5.    For iLoop = iDeb To iFin
  6.       lSomme = lSomme + (Range("A" & iLoop).Value * Range("D" & iLoop).Value)
  7.    Next
  8.    MonProduit = lSomme
  9. End Function


 
Une fois cela fait retourner dans la feuille de calcul et mettre la formule du type :
 
=MonProduit(1;100)
 
Il y a peut être plus simple mais ca fonctionne.

n°2498414
jcdc
Posté le 25-08-2006 à 12:12:34  profilanswer
 

Ta fonction fonctionne, et je t'en remercie. Maintenant, comment serait-il possible que le champ ce mette a jour automatiquement des la modifiaction d'un nombre de la cellule.
 
Merci pour tout.


Message édité par jcdc le 25-08-2006 à 12:13:36
n°2498440
ventilo-hf​r
Posté le 25-08-2006 à 12:38:07  profilanswer
 

Une solution mais peu satisfaisante il doit y avoir mieux... toujours dans l'éditeur visual basic ajouter à la feuille concernée le code suivant :
 

Code :
  1. Private Sub Worksheet_SelectionChange(ByVal Target as Excel.Range)
  2.    If Target.Column = 1 Or Target.Column = 2 Then
  3.       Range("D1" ).Formula = Range("D1" ).Formula
  4.    End If
  5. End Sub



Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Windows & Software
  Logiciels

  Excel : Formule imbriqué.

 

Sujets relatifs
[Excel] liste unique d'une colonne[Résolu] Excel XP - Tri et tranches de CA
Conversion decimal en heure sous excel?[ Excel ] Fusionner 2 colonnes avec addition des contenus
info bulle sur lien hypertexte dans excel 2003Excel: Ajouter une fonction recherche
question excel : afficher le nom de la cellule dans une case.excel : graphique et tri
comment changer l'icone de word Excel et ppt?help meliste excel impossible sous google spreedsheet ?
Plus de sujets relatifs à : Excel : Formule imbriqué.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR