Somme et produit en vba

JLF47

XLDnaute Nouveau
salut à tous,
Quelqu'un peut-il m'expliquer la procédure vba pour faire la somme (ou le produit) de 2 chiffres situés en A1 et B1 par exemple et renvoyer le résultat en C1, sachant que cela doit rester vrai si j'ajoute ou supprime une ligne.
J'ai vraiment besoin d'un coup de main, je débute.
Merci à ceux qui voudront bien m'aider.
:confused:
 

alexga78

XLDnaute Occasionnel
Re : Somme et produit en vba

Bonsoir JLF47, le forum

le plus simple une boucle à placer dans la feuille en question:
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Integer
For i = 1 To Application.CountA(Range("A:A"))
Cells(i, 3).Value = Cells(i, 1).Value + Cells(i, 2).Value
Cells(i, 4).Value = Cells(i, 1).Value * Cells(i, 2).Value
Next i
End Sub
Bonne soirée

EDIT:
Somme en C
Produit en D
Désolé Skoobi pas vu ta réponse.
 
Dernière édition:

ROGER2327

XLDnaute Barbatruc
Re : Somme et produit en vba

Re... bonsoir
Le code figurant dans le classeur proposé plus haut s'écrit plus simplement (et plus logiquement) :
Code:
Option Explicit

Sub produitAB()
Dim i As Long, oDat()
    oDat = Intersect(Range([A1], [A1].SpecialCells(xlLastCell)), Range("$A:$C")).Value
    For i = 2 To UBound(oDat, 1)
        If IsNumeric(oDat(i, 1)) And IsNumeric(oDat(i, 2)) And Not IsEmpty(oDat(i, 1)) And Not IsEmpty(oDat(i, 2)) Then oDat(i, 3) = oDat(i, 1) * oDat(i, 2) Else oDat(i, 3) = Empty
    Next i
    Intersect(Range([A1], [A1].SpecialCells(xlLastCell)), Range("$A:$C")).Value = oDat
End Sub

Sub sommeAB()
Dim i As Long, oDat()
    oDat = Intersect(Range([A1], [A1].SpecialCells(xlLastCell)), Range("$A:$C")).Value
    For i = 2 To UBound(oDat, 1)
        If IsNumeric(oDat(i, 1)) And IsNumeric(oDat(i, 2)) And Not IsEmpty(oDat(i, 1)) And Not IsEmpty(oDat(i, 2)) Then oDat(i, 3) = oDat(i, 1) + oDat(i, 2) Else oDat(i, 3) = Empty
    Next i
    Intersect(Range([A1], [A1].SpecialCells(xlLastCell)), Range("$A:$C")).Value = oDat
End Sub
ROGER2327
 

ISSO_ERNEST

XLDnaute Nouveau
Bonjour Pourrais-je avoir le code qui me permet de faire la somme des produits de plusieurs cellules excel de deux différentes feuilles?
Par exemple : Sheets("Qtité_Actions").Cells(3, 3). value*Sheets("Cours_Actions").Cells(3, 3).Value +
Sheets("Qtité_Actions").Cells(3, 4). value*Sheets("Cours_Actions").Cells(3, 4).Value +
Sheets("Qtité_Actions").Cells(3, 4). value*Sheets("Cours_Actions").Cells(3, 4).Value +
... + Sheets("Qtité_Actions").Cells(i, j). value*Sheets("Cours_Actions").Cells(3, j).Value
et mettre cette somme dans une cellule. Ensuite reprendre qaund i et J change et mettre ça dans une autre cellule ainsi de suite.
 

Phil69970

XLDnaute Barbatruc
Bonjour @ISSO_ERNEST , le forum

@ISSO_ERNEST Bienvenu sur XLD



Fouille et .deterrage de post.gif



Ouvre ta propre discussion et éventuellement tu fournis un fichier simplifié et anonymisé de ta demande

@Phil69970
 

Discussions similaires

Statistiques des forums

Discussions
312 500
Messages
2 089 004
Membres
104 003
dernier inscrit
adyady__