opération en fin de taleau

E

elno

Guest
Voilà je suis débutant en Vb et j'extrais des tableaux d'une base de données ils ont un nombre de lignes différents et j aimerai automatiser certains calculs en fin de colonne. Je pensais traiter mes opérations colonne par colonne. Vu qu'il ne sagit par forcément de totaux en fin de colonne.

J'aurais aussi aimé savoir s'il était possible de nommer les cellules contenant les calculs réalisés pour les repporter plutart dans un tableau récapitulitif sur une autre feuille.

J'ai joins un fichier exemple des types de calcul a éffectuer en fin de colonne.

Je pensai utiliser ceci pour me positionner en fin de tableau: Range("D65536").End(xlUp)

Malheureusement je n'arrive a rien merci d'avance pour vos conseils
 

Pièces jointes

  • exemple.zip
    1.7 KB · Affichages: 24
  • exemple.zip
    1.7 KB · Affichages: 15
  • exemple.zip
    1.7 KB · Affichages: 25
C

CBernardT

Guest
Bonjour Elno et le forum,

Pour gérer ce genre de problème, c'est-à-dire des opérations sur les données d'une colonne dont la longueur est indéterminée, j'ai pris l'habitude de placer les formules dans les cellules au-dessus de la ligne des étiquettes de champs.

Pour le report dans la feuille récapitulative, de simple formule "=".

Cordialement

CBernardT
 

Pièces jointes

  • exempleV1.zip
    2.4 KB · Affichages: 25
  • exempleV1.zip
    2.4 KB · Affichages: 28
  • exempleV1.zip
    2.4 KB · Affichages: 23
E

elno

Guest
Sub macro1()
'Somme sur B2

Range("B2").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWorkbook.Names.Add Name:="TOTO", RefersToR1C1:=Selection
Range("B65536").End(xlUp).Offset(1, 0).Select
ActiveCell.FormulaR1C1 = "=SUM(TOTO)"

J'avais vraiment besoin des resultats en fin de colone donc j ai fais ca si quelqu'un voit comment faire mieu ou si ca peut aider quelqu'un d'autre


ActiveWorkbook.Names.Add Name:="tructruc", RefersToR1C1:=Range("B65536").End(xlUp).Offset(, 0)

'Somme sur colonne C2

Range("D2").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWorkbook.Names.Add Name:="ELNO", RefersToR1C1:=Selection
Range("D65536").End(xlUp).Offset(1, 0).Select
ActiveCell.FormulaR1C1 = "=SUM(ELNO)"

ActiveWorkbook.Names.Add Name:="tructruc2", RefersToR1C1:=Range("D65536").End(xlUp).Offset(, 0)


Range("C65536").End(xlUp).Offset(1, 0).Select
ActiveCell.FormulaR1C1 = "=tructruc/tructruc2"
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 203
Messages
2 107 177
Membres
109 766
dernier inscrit
pleutre