macro trie date excel 2003

L

LAURA

Guest
Voici mon problème j'importe une petite base de données d'access dans une feuille Excel
avec entre autre un champ date
exemple
- Date
- Numero fiche
- Montant
Date N° F Montant
1/7/2005 1 50
1/7/2005 2 100
1/7/2005 3 250
2/7/2005 4 500
2/7/2005 5 1000


Je voudrais savoir si c'est possible faire une macro pour présenter les données dans une autre feuille par jour en séparant des dates sachant que je ne peux prévoir combien d'enregistrements par jour pour faire le tableau suivant

Date N° F Montant
1/7/2005 1 50
1/7/2005 2 100
1/7/2005 3 250

Total 1/7/2005 400

2/7/2005 4 500
2/7/2005 5 1000


Total 2/7/2005 1500

Merci

Laura
 

Jocelyn

XLDnaute Barbatruc
Bonjour le Forum,
Bonjour LAURA,


Alors aprés un petit bonjour qui fait toujours plaisir un petit fichier joint avec un essai en passant par un TCD (je ne peux pas t'aider au niveau des macros).

voila regarde et dis nous si cela pourrait aller si oui je te donnerais des info complémentaire pour mettre en place un TCD (Tableau croisé Dynamique)

Jocelyn. [file name=laura.zip size=5155]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/laura.zip[/file]
 

Pièces jointes

  • laura.zip
    5 KB · Affichages: 19
  • laura.zip
    5 KB · Affichages: 18
  • laura.zip
    5 KB · Affichages: 16

Hervé

XLDnaute Barbatruc
Bonjour laura, jocelyn, le forum

En pièce jointe une autre version, par macro.

Données renvoyer en feuille 2

salut
[file name=Classeur3_20051012112433.zip size=8395]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur3_20051012112433.zip[/file]
 

Pièces jointes

  • Classeur3_20051012112433.zip
    8.2 KB · Affichages: 22
L

LAURA15

Guest
MERCI super je vais essayer de dissequer et de compendre mais en effet ce n'était pas de mon niveau
Par contre quand je rajoute des dates certains numéro de fiche sont remplacée par une date par exemple
05/01/1900
Mais bon je vais voir c'est deja super merci
J'ai quand meme renvoyé le fichier pour que tu vois
Bonne journée
Laura
 
F

fichier

Guest
oupps voici le fichier [file name=Classeur3_20051012122957.zip size=9027]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur3_20051012122957.zip[/file] [file name=Classeur3_20051012122957.zip size=9027]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur3_20051012122957.zip[/file]
 

Pièces jointes

  • Classeur3_20051012122957.zip
    8.8 KB · Affichages: 14

Hervé

XLDnaute Barbatruc
re laura

Ton souci vient simplement des formats de cellule forcés en date.

rajoute ce code en début de macro, juste avant ligne = 1

Sheets('feuil2').Columns('B:B').NumberFormat = 'General'


Ainsi la colonne B de la feuille2 sera au format standard.

salut
 
L

LAURA15

Guest
oui en effet c'etait bien le problème
Mais en fait je n'arrive pas a modifeir le code pour ce dont j'ai besoin
Je pense que cela n'est peut etre pas possible
Mon tableau de résultat est un tableau preformater dont je ne peux changer la présentation
Je pensais qu'il y a vait une formaule que j'aurai smis dans ce tableau et qui aurait permis de classer par dates en passant des lignes entre chaque dates
Pour etre plus clair voici ce tableau

Dis moi si c possible

Merci

Laura
[file name=tableau_20051012151250.zip size=4772]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tableau_20051012151250.zip[/file]
 

Pièces jointes

  • tableau_20051012151250.zip
    4.7 KB · Affichages: 16

Hervé

XLDnaute Barbatruc
re laura

En effet, ton tableau n'a plus grand chose à voir avec ta demande initial :)

tentative de réponse en pièce jointe.

salut
[file name=tableauv2.zip size=11364]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tableauv2.zip[/file]
 

Pièces jointes

  • tableauv2.zip
    11.1 KB · Affichages: 19
  • tableauv2.zip
    11.1 KB · Affichages: 18
  • tableauv2.zip
    11.1 KB · Affichages: 19
S

SUPER

Guest
Vraiment un grand merci , il suffit que je mette un intervale régulier et ca fonctionne exactement ce que je voulais
tu es un as en plus je comprends un peu mieux le code
Suuuuperbe
Bonne soirée et merci encore
Laura
 
L

LAURA15

Guest
dommage pourtant je croyais bien que cela marc hait mais quand je rejoute les dates qui suivent le premier jour est bon mais le reste se mèlange
Pas facile j'ai l'impression
Bonne soirée [file name=tableauv2_20051012205132.zip size=11642]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tableauv2_20051012205132.zip[/file]
 

Pièces jointes

  • tableauv2_20051012205132.zip
    11.4 KB · Affichages: 17

Hervé

XLDnaute Barbatruc
Bonjour laura

en pièce jointe, ton fichier modifié

Le bug etait dû à l'incompétence notoire de mon clone :)

salut


[file name=tableauv2_20051013130258.zip size=13366]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tableauv2_20051013130258.zip[/file]
 

Pièces jointes

  • tableauv2_20051013130258.zip
    13.1 KB · Affichages: 15
L

LAURA15

Guest
Bonjour
J'ai essayé de comprendre ton code car je n'aime pas utiliser betement les choses d'autant que j'aimerais savoir manipuler les données
J'ai bien compris pour changer l'intervalle des lignes qui est maintenant de 30 et le nombre des colonnes qui est maintenant de 13
Je débute en VBA et cet exemple me permettrait de comprendre mieux peut etre voila j'ai commence a commenter en rouge mais après je sui un peu perdue
Car j'aimerais savoir manipuler les données qui arrivent de la base access et pouvoir les envoyer ou je veux par exemple pour ameliorer mon tableu précédent j'aimerais pouvoir utiliser ce code sur chaque feuille mais j'ai fait une feuille par mois donc il faudrait qu'il envoie les donnéres de la base dans la feuille du mois concernée et ensuite continuer sur chaque feuille avec cette macro
Est ce mossible ?


Sub Bouton1_QuandClic()
Déclaration des variables
Dim c As Range
Dim i As Byte
Dim ligne As Integer
Dim lignesuivante As Integer

Ligne ou demarre le tableau
lignesuivante = 3

Selection des eléments de la colonne, premier enregistrement juste qu'au dernier
For Each c In Range('a1:a' & Range('a65536').End(xlUp).Row)
ligne = lignesuivante

Si la ligne est egal la logne précédente
If c.Offset(0, 1) = c.Offset(1, 1) Then
de la collonne 1 a 13
For j = 1 To 13
Sheets('janvier').Cells(ligne, j) = c.Offset(0, j - 1)
Next j
ligne = ligne + 1
lignesuivante = ligne
Else
For j = 1 To 13
Sheets('janvier').Cells(ligne, j) = c.Offset(0, j - 1)
Next j
cpt = cpt + 1
Select Case cpt
Case 1: lignesuivante = 33
Case 2: lignesuivante = 63
Case Else: lignesuivante = 33 + (30 * (cpt - 1))
End Select
End If
Next c

End Sub

Merci
[file name=tableauv3mois.zip size=18195]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tableauv3mois.zip[/file]
 

Pièces jointes

  • tableauv3mois.zip
    17.8 KB · Affichages: 16

Hervé

XLDnaute Barbatruc
Bonsoir laura, le forum

Désolé pour la réponse tardive, je viens juste de découvrir ta derniere demande :eek:


Pour renvoyer chaque données dans l'onglet mois correspondant, cette macro ne va pas etre suffisante.

A quelle rythme tes données t'arrivent t'elles (quotidienne, hebdo, mensuelle,...)

S'agit'il simplement d'une mise à jour qui te parviens depuis ta base access, ou toujours la totalité des données.

en attendant de te lire...

salut
 

Discussions similaires

Réponses
2
Affichages
525
Réponses
2
Affichages
513

Statistiques des forums

Discussions
312 331
Messages
2 087 353
Membres
103 528
dernier inscrit
hplus