Prb avec les feuilles de Excel en VBA

Fermé
Cire - 26 oct. 2003 à 05:32
 Cire - 27 oct. 2003 à 18:42
Bonjour,

Dans une cellule de ma feuille courante, j'ai besoin du cumul de cette même cellule de mes feuilles précédente. Comment le faire en VBA?

Et comment insérer cette fonction (VBA) à une cellule pour que cette cellule soit à jour en tout temps?

Merci de votre expertise.

Cire
A voir également:

3 réponses

Profil bloqué
26 oct. 2003 à 17:32
exemple dans la cellule A1 de ma troisième feuille je veux afficher le cumul de la callule A 1 de la feuille 1 et la cellule A1 de la feuille 2

donc dans la cellule A1 de la feuille 3 il faut insérer la formule suivante
=Feuil2!A1+Feuil1!A1

time is not money, time is life
0
Bonjour,

Merci Filaliabdou, je précise toutefois que lors d'une copie d'une feuille les référence ne suivent pas, donc je ne peux pas utiliser les nom des feuilles, je pense qu'il faut du VBA pour créer une fonction qui prendra une valeur de la feuille précédente additionner avec une cellule de la feuille courante et que le résultat soit dans la cellule qui contiendra la fonction créer.

Tout le problème viens du fait qu'au moment de la copie de la feuille les références aux feuilles ne suivent pas, et comme j'ai plusieur cellule qui utilise le même système, je veux simplifier la mise a jour avec une fonction VBA qui retournera un résultat d'une somme.

Merci à tous d'attirer votre attention.


Cire
0
Profil bloqué
27 oct. 2003 à 13:54
dans l'exemple suivant j'ai utilisé une fonction que j'ai nommé my_function.

on peut placer cette fonction dans n'importe quelle cellule , pour créer cette fonction il faut copier le code ci-dessous et le coller dans un nouveau m0dule (outils, macro, visual basic editor puis insertion , module)

cette fonction calcule le cumul des cellules A1 de chaque feuille (évidemment tu peux changer les cellules à sommer en changeant les indices dans le code ci-dessous cells(y,z) où y et l'identifiant des lignes et z celui des colonnes.

pour insérer ctte fonction dans un fichier il faut que ce dernier contyient le module qu'on vient de créer . puis insrtion , fonction, personnalisées

Function my_function()
x = 0
For i = 1 To ThisWorkbook.Sheets.Count
x = x + ThisWorkbook.Sheets(i).Cells(1, 1)
Next i
my_function = x
End Function


time is not money, time is life
0
Hey Merci Filaliabdou,

C'est presque que ça, mais j'aime bien cette fonction. Je me suis peut-être mal exprimer?

Je veux simplement cumuller une cellule de la page PRÉCÉDENTE à une cette même cellule de la page courante ou obtenir le nombre contenu dans la cellule de la page précédente à une expresion du genre : = my_function() + C5

Merci beaucoup Filaliabdou

Cire
0