Incrémenter formule via Macro et Sommer entre les lignes

gerson94

XLDnaute Occasionnel
Bonsoir le forum,

J'ai 2 feuilles dans mon classeur :
La première contient des données que je souhaite récupérer via une macro qui incrémente la formule dans une deuxième feuille.
Voici le problème :
A la manière d'un "décaler", chaque fois qu'une liste de tâches se rajoute en feuille "data"(il y en a 200 en réalité), la macro doit récupérer les nouvelles données et enrichir la feuille " suivi" après application de la formule de haut en bas (et s'arrête net à la dernière ligne de data).
Mais en plus après que la formule a tourné, les intitulés récapitulatifs en gras doivent faire la somme de toutes les tâches (j'ai mis en gris les lignes qui doivent faire les sommes). ex: on doit avoir semaine par semaine les sommes (ligne 5 à 12)de la tâche Assistance utilisateurs par exemple.
Autre résultat : on doit retrouver en feuille suivi, la tâche "reprise de données" avec le total.

Merci de votre aide

Gerson
 

Pièces jointes

  • SuiviGerson.zip
    23.8 KB · Affichages: 51

fanfan38

XLDnaute Barbatruc
Re : Incrémenter formule via Macro et Sommer entre les lignes

Bonjour
La macro transfert copie les données de la feuilles data sur la feuille suivi dans les colonnes correspondantes...
Il ne reste plus qu'a copier les formules des colonnes f et g sur les lignes correspondantes...

A+ François
 

gerson94

XLDnaute Occasionnel
Re : Incrémenter formule via Macro et Sommer entre les lignes

Bonsoir le forum,

J'ai 2 feuilles dans mon classeur :
La première contient des données que je souhaite récupérer via une macro qui incrémente la formule dans une deuxième feuille.
Voici le problème :
A la manière d'un "décaler", chaque fois qu'une liste de tâches se rajoute en feuille "data"(il y en a 200 en réalité), la macro doit récupérer les nouvelles données et enrichir la feuille " suivi" après application de la formule de haut en bas (et s'arrête net à la dernière ligne de data).
Mais en plus après que la formule a tourné, les intitulés récapitulatifs en gras doivent faire la somme de toutes les tâches (j'ai mis en gris les lignes qui doivent faire les sommes). ex: on doit avoir semaine par semaine les sommes (ligne 5 à 12)de la tâche Assistance utilisateurs par exemple.
Autre résultat : on doit retrouver en feuille suivi, la tâche "reprise de données" avec le total.

Merci de votre aide

Gerson

Salut Fanfan,
C'est pas mal ta technique, merci mais en fait il ne s'agit pas d'un transfert de données mais d'une incrémentation de formules du haut vers le bas mais jusqu'à la dernière ligne de la feuille data. En plus, je serai amené à récupérer d'autres données d'autres feuilles d'où l'importance de la recopie formule en feuille suivi.
Et pour le total as-tu une idée? Ou somebody else?

A plus

Gerson
 

Gael

XLDnaute Barbatruc
Re : Incrémenter formule via Macro et Sommer entre les lignes

Bonjour Gerson94, bonjour Fanfan38,

Un essai dans l'exemple joint.

Pour les totaux, je me suis servi de la fonction sous-total, très pratique dans ce cas. J'ai cependant fait quelques modifs dans les feuilles:

1 - Suppresion de la première ligne de chaque liste de tâches dans Data qui va faire double emploi avec les sous-totaux et sera totalisée en plus.

2 - Dans la feuille suivi, suppression de la ligne 3 à blanc et création d'un en-tête en colonne D "Ress".

La macro s'appelle "Incrémentation" dans le module "formules" et ajoute si nécessaire des lignes de Data puis regénère les sous-totaux.

@+

Gael
 

Pièces jointes

  • SuiviGerson_V1.xls
    88.5 KB · Affichages: 87

gerson94

XLDnaute Occasionnel
Re : Incrémenter formule via Macro et Sommer entre les lignes

Bonjour Gerson94, bonjour Fanfan38,

Un essai dans l'exemple joint.

Pour les totaux, je me suis servi de la fonction sous-total, très pratique dans ce cas. J'ai cependant fait quelques modifs dans les feuilles:

1 - Suppresion de la première ligne de chaque liste de tâches dans Data qui va faire double emploi avec les sous-totaux et sera totalisée en plus.

2 - Dans la feuille suivi, suppression de la ligne 3 à blanc et création d'un en-tête en colonne D "Ress".

La macro s'appelle "Incrémentation" dans le module "formules" et ajoute si nécessaire des lignes de Data puis regénère les sous-totaux.

@+

Gael

Salut Gael,
Pas mal l'idée de sous-totaux intégrés. J'ai aussitôt testé la macro : ça a marché à moitié la première fois en prenant en compte la moitié des nouvelles infos de la feuille "data".

Je suis en train de mettre à jour une macro en m'appuyant sur la tienne que j'avais déjà utilisé auparavant....mais pas évident!!!
Dim Nbdata As Integer 'Nombre de lignes de la feuille data
Dim Nbsuivi As Integer 'Nombre de lignes de la feuille suivi

Application.Calculation = xlManual

Nbdatamsp = Sheets("data").Range("A1").CurrentRegion.Rows.Count
NbPilotage = Sheets("suivi").Range("B8").CurrentRegion.Rows.Count

If Nbdata > 1 Then

'Recopie des formules sur les lignes correspondant à la feuille data
Sheets("suivi").Select
Range("B9:BG9").AutoFill Destination:=Range("B9:BG" & Nbdata), Type:=xlFillDefault

'Elimination des formules sur les lignes dépassant la taille de la feuille data
If Nbsuivi > Nbdata Then Range("A" & Nbdata + 1 & ":A" & Nbsuivi).EntireRow.Delete

Application.Calculation = xlAutomatic

End If

End Sub

Gerson
 

Pièces jointes

  • SuiviGerson_V2.zip
    28.7 KB · Affichages: 42

Gael

XLDnaute Barbatruc
Re : Incrémenter formule via Macro et Sommer entre les lignes

Re,

Désolé, j'avais oublié de supprimer les sous-totaux avant de calculer le nombre de lignes, c'est pourquoi il n'a pris qu'une partie des données.

Tu peux réessayer dans l'exemple joint, j'ai juste ajouté au début:

Code:
'Suppression des sous-totaux
Worksheets("Suivi").Range("C3").Select
Selection.RemoveSubtotal

@+

Gael
 

Pièces jointes

  • SuiviGerson_V3.xls
    84.5 KB · Affichages: 60

gerson94

XLDnaute Occasionnel
Re : Incrémenter formule via Macro et Sommer entre les lignes

Re,

Désolé, j'avais oublié de supprimer les sous-totaux avant de calculer le nombre de lignes, c'est pourquoi il n'a pris qu'une partie des données.

Tu peux réessayer dans l'exemple joint, j'ai juste ajouté au début:

Code:
'Suppression des sous-totaux
Worksheets("Suivi").Range("C3").Select
Selection.RemoveSubtotal

@+

Gael


Non pas de problème, au contraire.
J'ai ajouté un Application.calculation = xlManual en début de code et un xlManualAutomatic en fin de code.

J'ai constaté un truc bizarre : lorsque j'exécute la macro je n'ai que le Total Assistance utilisateur qui totalise tout le reste. Du coup, j'ai fait un pas à pas et mais cette fois je n'ai eu que les deux premiers totaux.
Mais on approche de la vérité, ou de la lumière selon les goûts.

Gerson
 

Pièces jointes

  • SuiviGerson_V4.zip
    30.4 KB · Affichages: 49

Gael

XLDnaute Barbatruc
Re : Incrémenter formule via Macro et Sommer entre les lignes

Re,

Si tu mets le mode de calcul en manuel, Excel ne prendra pas en compte les nouvelles lignes dans le calcul des sous-totaux.

Tu peux aussi faire avant le sous-total:

Code:
Sheets("suivi").Calculate

@+

Gael
 

gerson94

XLDnaute Occasionnel
Re : Incrémenter formule via Macro et Sommer entre les lignes

Re,

Si tu mets le mode de calcul en manuel, Excel ne prendra pas en compte les nouvelles lignes dans le calcul des sous-totaux.

Tu peux aussi faire avant le sous-total:

Code:
Sheets("suivi").Calculate

@+

Gael

J'ai rajouté le bout de code. Ca marche nickel sur le fichier, j'ai pas trop de pb avec le mode de calcul en manuel puisque je repasse en automatique en fin de code.
Je vais tester la macro sur l'ensemble du fichier (700 lignes) pour voir et te tiens au courant. En tout cas merci pour le coup de main!!!:)

Gerson
 

gerson94

XLDnaute Occasionnel
Re : Incrémenter formule via Macro et Sommer entre les lignes

J'ai rajouté le bout de code. Ca marche nickel sur le fichier, j'ai pas trop de pb avec le mode de calcul en manuel puisque je repasse en automatique en fin de code.
Je vais tester la macro sur l'ensemble du fichier (700 lignes) pour voir et te tiens au courant. En tout cas merci pour le coup de main!!!:)

Gerson


Salut le forum, salut gaël (j'ai mis les trema :rolleyes: sur ton prénom tu as vu!!)

Alors chose promise, je reviens pour te dire si çà marche. La macro tourne bien sur mes 800 lignes. Et j'ai bien mes sous-totaux. il y a juste quelques ajustements à faire dans le code mais dans l'ensemble çà marche bien. Pour moi le pb est résolu.

Merci encore.

Gerson:cool:
 

Discussions similaires

Réponses
4
Affichages
267

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16