fonction SUM avec une variable

  • Initiateur de la discussion Initiateur de la discussion chelsea
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

chelsea

Guest
bonjour aux "forumeurs"

mon problème est le suivant:
j'ai mis dans une variable "col" la colonne d'une cellule

et ma fonction SUM doit additionner tout une ligne, jusqu'à cette colonne

moi je pensait que c'était ça... :
Code:
Range("D" & ligne).Value = "=SUM(RC[2]:RC[col])"

...mais nan😛 . alors est ce que quelqu'un peut m'aider svp ?

merci
 
Re : fonction SUM avec une variable

re:

d'apres ce que je comprends, tu commences à la colonne 2 et tu vas jusqu'à le colonne col
Range("D"....... tu vas englober la colonne D, si tu mets une formule comme cel, tu vas voir une reference circulaire

alors soit :
range("D" & ligne).formulaR1C1 = "=Sum(RC[2]:RC[" & col & "])"
sinon
Range("D" & ligne).value = worksheetfunction.sum(range("B" & ligne & ":" & cells(ligne,col).address))

Edit : oups pas vu, bonjour David, Pierrejean
 
Re : fonction SUM avec une variable

nan c'est pas ça av ce que tu me dit sa me fais erreur d'éxecution '424' objet requis
et comme je t'ais dit ça me fais erreur d'éxecution '1004' erreur définie par l'application ou pas l'objet 😕
 
Re : fonction SUM avec une variable

grace à vous ça fonctionne, le bon code est

Code:
Range("D" & ligne).FormulaR1C1 = "=Sum(RC[2]:RC[" & col - 4 & "])"

il y a -4 car en fait( imaginons que col=14) la fonction SUM va additionner tous les chiffres qui sont 14 cases aprés la case qui va recevoir le résultat, mais cela dépasse de 4 case la colonne voulu.

merci à tous 😉
 
Re : fonction SUM avec une variable

re: bonjour à tous

j'ai fais une autre ligne avec la fonction sum et elle ne fonctionne pas :

Code:
ActiveCell.FormulaR1C1 = "=SUM(RC[" & colused - 2 & "]:RC[" & colfin & "])"

alors que celle-ci fonctionne parfaitement
Code:
Range("D" & ligne).FormulaR1C1 = "=Sum(RC[2]:RC[" & colused - 4 & "])"

😕
 
Re : fonction SUM avec une variable

Code:
Private Sub CommandButton2_Click()
Dim nbpers, i, ligne, j, colused, colfin As Integer
Dim cel As Range, flag As Boolean
Dim dateJour As Date


'colused = variable utilisé pour la colonne used
'colfin = variable qui récupère la colonne de la derniere cellule de la ligne concerné

    Sheets("Estimation détaillée").Select

        Range("B1").Value = "nous sommes le : "
        Range("B2").Select
        ActiveCell.FormulaR1C1 = "=TODAY()"
        Columns("A:B").EntireColumn.AutoFit
        
        nbpers = InputBox("combien de personne y a t-il sur le projet ")
    
        ligne = 8

    For i = 1 To nbpers

        'colonne used
            flag = False
            dateJour = Range("B2").Value
            
            'recherche sur la ligne des jours de la date d'aujourd'hui
            For Each cel In Range("F2:IV2")
                 If cel.Value = dateJour Then
                 flag = True
                 cel.Select
                 Exit For
                 End If
            Next
            
            If flag = True Then ' La date a été trouvée
            colused = ActiveCell.Column
            Range("D" & ligne).FormulaR1C1 = "=Sum(RC[2]:RC[" & colused - 4 & "])"
            'même formule pour les 13 autres tâches
            Range("D" & ligne).Select
            Selection.AutoFill Destination:=Range("D" & ligne, "D" & ligne + 13), Type:=xlFillDefault
            End If
        '
        
        'colonne raf
            
            'selection de la dernière case de la ligne pour récupérer la colonne
            Range("IV1").Select
            colfin = ActiveCell.Column
            MsgBox colfin
            MsgBox colused
            
            'For j = colused - 4 To colfin
            'Range("C" & ligne).Value = Range("C" & ligne).Value + Cells(ligne, j).Value
                    
            'Next
            
            Range("C" & ligne).Select
            ActiveCell.FormulaR1C1 = "=SUM(RC[" & colused - 2 & "]:RC[" & colfin & "])"
        '
        
        ligne = ligne + 18

Next
End Sub
 
Re : fonction SUM avec une variable

re

le coupable est colused (vide)

ceci parceque la date n'a pas été trouvée

vois avec la retouche suivante

Code:
Sub CommandButton2_Click()
Dim nbpers, i, ligne, j, colused, colfin As Integer
Dim cel As Range, flag As Boolean
Dim dateJour As Date

'colused = variable utilisé pour la colonne used
'colfin = variable qui récupère la colonne de la derniere cellule de la ligne concerné
    Sheets("Feuil1").Select
        Range("B1").Value = "nous sommes le : "
        Range("B2").Select
        ActiveCell.FormulaR1C1 = "=TODAY()"
        Columns("A:B").EntireColumn.AutoFit
        
        nbpers = InputBox("combien de personne y a t-il sur le projet ")
    
        ligne = 8
    For i = 1 To nbpers
        'colonne used
            flag = False
            dateJour = Range("B2").Value
            
            'recherche sur la ligne des jours de la date d'aujourd'hui
            For Each cel In Range("F2:IV2")
                 If cel.Value = dateJour Then
                 flag = True
                 cel.Select
                 Exit For
                 End If
            Next
            
            If flag = True Then ' La date a été trouvée
            colused = ActiveCell.Column
            Range("D" & ligne).FormulaR1C1 = "=Sum(RC[2]:RC[" & colused - 4 & "])"
            'même formule pour les 13 autres tâches
            Range("D" & ligne).Select
            Selection.AutoFill Destination:=Range("D" & ligne, "D" & ligne + 13), Type:=xlFillDefault
            [COLOR=red]Else
            MsgBox ("La date n'a pas été trouvée")
            Exit Sub
[/COLOR]            End If
        '
        
        'colonne raf
            
            'selection de la dernière case de la ligne pour récupérer la colonne
            Range("IV1").Select
            colfin = ActiveCell.Column
            MsgBox colfin
            MsgBox colused
            
            'For j = colused - 4 To colfin
            'Range("C" & ligne).Value = Range("C" & ligne).Value + Cells(ligne, j).Value
                    
            'Next
            
            Range("C" & ligne).Select
            ActiveCell.FormulaR1C1 = "=SUM(RC[" & colused - 2 & "]:RC[" & colfin & "])"
        '
        
        ligne = ligne + 18
Next
End Sub

lorsque ce probleme sera reglé ces lignes seront fonctionnelles

Code:
Range("C" & ligne).Select
            ActiveCell.FormulaR1C1 = "=SUM(RC[" & colused - 2 & "]:RC[" & colfin & "])"
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour