Somme d'une colonne [Résolu]

Messages postés
128
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
17 mai 2008
- - Dernière réponse : jrivet
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
- 18 août 2006 à 11:45
bonjour,

Juste une petite question...

sous excel il est possible d'obtenir d'une cellule quelconque qu'elle fasse la somme d'une colonne complète (ex: dans ma cellule A1 : = Somme (F:F)soit ma colonne F)

Pour mon projet je souhaite que cette opération s'affiche ds un textbox, mais sous VBA quelle est donc la syntaxe de la somme d'une colonne??

Merci d'avance, Achi...
Afficher la suite 

10 réponses

Meilleure réponse
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
45
3
Merci
Salut,


Si ton textbox est inséré directement dans une feuille excel, tu peux continuer à mettre la somme dans une cellule (A1)


Et mettre A1 dans la propriété LinkedCell de ton textbox.


Si ton textBox est dans un UserForm


NomDuTextBox.text = ActiveWorkBook.Worksheets(1).Range("A1").Text


(Worksheets(1) Si la cellule A1 est celle de la feuille 1)

Si tu veux calculer a l'aide du code la somme et mettre le resultat dans un textbox.

TextBox1.Text = WorksheetFunction.Sum(ActiveWorkbook.Worksheets(1).Columns("F:F"))







@+ Juli?n





: Règlement

=>
:Moteur de recherche 

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 193 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jrivet
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
45
3
Merci
Re,


J'ai regarde un peu ce qui suit peut peu etre faire office de timer.


Le code suivant est à mettre dans un module .








Public Sub TimerMsg() 
Dim AlertTime 
AlertTime =  Now +  TimeValue ("00:00:03")  'tu regle ici l'interval du "timer" ici 3 secondes
Call Application.OnTime(AlertTime, "msg") 
End Sub 

Sub msg() 
'Ceci sera executer tout les trois secondes
MsgBox "Three Seconds is up!" 
Call TimerMsg 
End Sub 

 







<small> Coloration syntaxique automatique [AFCK]</small>

Je ne suis aps sur que cela t'aide       







=89254






@+ Juli?n





: Règlement

=>
:Moteur de recherche 

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 193 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jrivet
Messages postés
128
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
17 mai 2008
0
Merci
salut Julien!

Merci, s'était la dernière option qu'il me fallait....

mais pour quelle fonctionne il me faudrait qu'elle soit lue en continu par visual basic...
et je ne sais pas ds quelle sub la mettre....alors si tu sais!!!!

merci, @+ Achi.
Commenter la réponse de cs_Achi
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
45
0
Merci
Salut,


Il faut que tu crée un Timer car autant que je me souvienne, il n'y a pas de Timer tout fait en Excel


Regarde sur le Site si tu n'en trouve pas un







@+ Juli?n





: Règlement

=>
:Moteur de recherche 
Commenter la réponse de jrivet
Messages postés
128
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
17 mai 2008
0
Merci
merci julien,

effectivement ca pas mal, moi j'avais fait un bidouillage de débutant lol!!

Private Sub Timer1_Timer()
Dim Start
    Start = Timer    ' Définit l'heure de début.
    Do While Timer < Start + 0.5
        DoEvents    ' Donne le contrôle à d'autres processus.
        TextBox2.Text = WorksheetFunction.Sum(ActiveWorkbook.Worksheets(1).Columns("F:F"))
        ' additionne les montants de la colonne F et les mets ds le textbox2
    Loop
    Timer1_Timer


End Sub
-----------------------

Le pb c'est qu'il faut le lancer une première fois...
Commenter la réponse de cs_Achi
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
45
0
Merci
Re,


Tu peux le lancer une premiere fois lors de l'activation de ton Userform.




Private Sub UserForm_Activate()
Call Timer1_Timer 'ou bien Call TimerMsg


End Sub




@+ Juli?n


: Règlement

=>

:Moteur de recherche
 
Commenter la réponse de jrivet
Messages postés
128
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
17 mai 2008
0
Merci
re,

oui c'est ce que j'ai fait mais sur le classeur directement, étant donné que je ne suis pas sur ma form... je suis passé par

Sub workbook_open ()
Timer1_Timer
End sub

voilivoilou.... merci julien!!
@+ Achi.
Commenter la réponse de cs_Achi
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
45
0
Merci
Re,


Mais de rien pense simplement à appuyer sur réponse acceptée sur le ou les post qui ont pu t'aider. (si tu estime que ton problème est résolu bien sûr).


Si tu l'a fait pendant l'écriture de ce message, excuse moi




@+ Juli?n


: Règlement

=>

:Moteur de recherche
 
Commenter la réponse de jrivet
Messages postés
128
Date d'inscription
lundi 27 février 2006
Statut
Membre
Dernière intervention
17 mai 2008
0
Merci
dsl je n'ai pas encore pris le pli.... j'y songerais dorénavant....

ciao!!
Commenter la réponse de cs_Achi
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
45
0
Merci
Re,


Mais faut pas etre désolé.


Merci à toi, et à plus sur le forum





@+ Juli?n


: Règlement

=>

:Moteur de recherche
 
Commenter la réponse de jrivet