Tableau Excel avec VBA

Fermé
mariecaro - 27 juin 2013 à 15:13
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 - 29 juin 2013 à 13:28
Bonjour à tous,

Je dois créer une macro permettant de créer un tableau, à partir d'un premier tableau.
Je rencontre quelques difficultés et faute de solution (et de personne pour m'aider!), je me tourne vers ce forum. Je remercie d'avance toutes les personnes qui pourront jeter un coup d'oeil à mon problème ! :)

Sur une première feuille excel appelée "Données", j'ai un tableau :
Il y a trois lignes : métier 1, métier 2, métier 3,
J'ai 5 colonnes correspondant à cinq périodes différentes. dans chacune de ces colonnes figures des durées (par exemple, 4 jours, 2 jour, 1 jours).
Sur une ligne juste au dessus figurent les jours cumulés (en reprenant le premier exemple : 4 jours, 6 jours, 7 jours).
Dans les cases figures des montants.

Dans ma deuxième feuille excel nommée "Final", je veux créer un tableau presque pareil que le premier.
Néanmoins, je souhaiterais avoir une colonne par jour et non une colonne par durée comme c'était le cas précédemment.
De plus, j'aurais aimé que les montants qui figurent dans ma première feuille excel soit divisés par le nombre de jours correspondants.

C'est un peu compliqué je vous l'accorde... J'ai créé mon document avec cet exemple, est il possible de le mettre en PJ ? Ce serait sans doute plus simple pour vous !

J'ai écris une première macro. Je débute vraiment en VBA, et rien ne fonctionne ! Rien ne s'affiche, je ne sais pas du tout comment faire...
Je pense que mon raisonnement est correct, mais je suppose que j'ai dû me tromper dans la formulation...

Voici ma macro :

Public Sub Synthèse()

Dim n As Integer
Dim i As Integer
Dim j As Integer

For n = 2 To 5
'n correspond au nombre de périodes


For j = Sheet("Données").Cells(1, n).Value - Sheet("Données").Cells(2, n).Value + 1 To Sheet("Données").Cells(2, n).Value
'ce qui me donne pour ma première boucle for j=1 To 4,
'pour la seconde colonne : For j=3 To 6 etc... (c'est le T0 de la période)
'j correspond au nombre de colonnes

For i = 3 To 5
'i correspond au nombre de ligne, j'ai 3 postes donc 3 lignes (L3, L4 et L5)

Sheet("Final").Cells(i, j + 1).Value = Sheet("Données").Cells(i + 1, n).Value / Sheet("Données").Cells(2, n).Value

Next i
Next j
Next n

End Sub

Peut être que c'est ma formulation "Sheet("nom de la feuille").Cells(i,j).Value qui est fausse ?

Bref, je suis complètement bloquée pour le moment...
Un grand merci à ceux ou celles qui pourront m'aider !

marie


A voir également:

1 réponse

f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
28 juin 2013 à 08:15
Bonjour,

pour mettre un fichier en pj suivez ce lien https://www.cjoint.com/

n'oubliez pas de copier/coller le lien cree.
0
Bonjour f894003,

Voici mon fichier,
il y a une première macro synthèse qui fonctionne très bien.
Je rencontre des difficultés uniquement avec ma macro graphique...
http://cjoint.com/?3FCwr0FF6K2
Merci d'avance !
0
oups j'ai fait un doublon toutes mes excuses... cette conversation avait été résolue et la macro corrigé, il manquait le S à sheets.
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
29 juin 2013 à 13:28
Bonjour,

si c'est résolu, marque-le (en haut vers ton titre)
Merci
eric
0