tri par N° agence

Rem$

XLDnaute Junior
bonjour à tous,

je joins un fichier pour expliquer mon pb car il est difficile de l'expliquer par des mots
en fait j'ai une liste de N° avec des infos sur la ligne
1 ligne par N°
le N° est décomposable en 4 parties
ex : 55 01 01 0001
55= année 2005
01 = N° agence
01 = N° opérateur
0001 = N° ordre

je voudrais trier de façon automatique cette liste pour renvoyer les N° avec les infos attachées dans les feuilles en fonction des N° d'agences....
l'exemple est plus clair........

d'avance merci pour les pistes........

Rem$
[file name=tri-agence_20050602123917.zip size=8207]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tri-agence_20050602123917.zip[/file]
 

Pièces jointes

  • tri-agence_20050602123917.zip
    8 KB · Affichages: 19

Hervé

XLDnaute Barbatruc
Bonjour le forum, rem$

Une proposition en pièce jointe.

Sub Bouton8_QuandClic()
Dim c As Range
Dim i As Byte
Dim derligne As Integer

For Each c In Range('a10:a' & Range('a65536').End(xlUp).Row)
With Sheets(Mid(c, 3, 2))
    derligne = .Range('a65536').End(xlUp).Row + 1
   
For i = 1 To 4
        .Cells(derligne, i) = Cells(c.Row, i)
   
Next i
End With
Next c
End Sub


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

Pièces jointes

  • tri-agence_20050602131414.zip
    15.9 KB · Affichages: 16

sousou

XLDnaute Barbatruc
[file name=tri-agencesousou_20050602133415.zip size=30937]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tri-agencesousou_20050602133415.zip[/file]

Bonjour

Une macro appelé deb()

va ranger tes données en analysant les lignes une à une

A fignoler
 

Pièces jointes

  • tri-agencesousou_20050602133415.zip
    30.2 KB · Affichages: 22

Creepy

XLDnaute Accro
Hello all,

Arfff je fais le truc je reviens pour répondre et y'a deja des réponses !!

Je mets mon exemple quand même !!!

Et puis d'abord mon code il est entierement commenté moi !!!

:p

@+

Creepy [file name=tri-agence_20050602134104.zip size=19898]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tri-agence_20050602134104.zip[/file]
 

Pièces jointes

  • tri-agence_20050602134104.zip
    19.4 KB · Affichages: 17

Rem$

XLDnaute Junior
je reviens sur la macro car dans le cas d'hervé, elle analyse le tableau jusqu'à une ligne déterminée mais comment faire s'il le tableau n'est pas complet.... avant la ligne car dans mon cas ca bug si la ligne est vide

merci

Rem$
 

Hervé

XLDnaute Barbatruc
Re

je pense avoir compris :

Tu n'a pas toujours des données en colonne A , c'est ca ???

Alors il suffit de tester avant si la cellule n'est pas vide, comme ca :

Sub Bouton8_QuandClic()
Dim c As Range
Dim i As Byte
Dim derligne As Integer

For Each c In Range('a2:a' & Range('a65536').End(xlUp).Row)
If c <> '' Then
&nbsp; &nbsp;
With Sheets(Mid(c, 3, 2))
&nbsp; &nbsp; &nbsp; &nbsp; derligne = .Range('a65536').End(xlUp).Row + 1
&nbsp; &nbsp; &nbsp; &nbsp;
For i = 1 To 4
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .Cells(derligne, i) = Cells(c.Row, i)
&nbsp; &nbsp; &nbsp; &nbsp;
Next i
&nbsp; &nbsp;
End With
End If
Next c
End Sub


C'est ca ?

:)

salut
 

Rem$

XLDnaute Junior
re

en fait mon N° se trouve dans la colonne B mais il arrive que le pb n'est pas de N° alors dans ce cas on remplace le N°à 10 chiffres par 10fois # j'ai créé une feuille nomée ## pour remplacer le N° agence mais je pense que c ça qui coince

peux pas faire passer le fichier trop lourd meme épuré plus de 50Ko
Rem$
 

Rem$

XLDnaute Junior
re

oui ca plus une erreure de frappe et le tour est joué ça marche

a l'utilisation je me rends compte que lorsque je relance la macro il remet l'intégralité de ce qu'il trouve et en fait la consultation pourrait se faire de façon quotidienne alors est-il possible de faire une mise à jour plutot que de tout remettre à nouveau???

je sais j'abuse mais bon ca serait le pied sinon faudra effacer apres chaque consultation (le doc en partagé sur le reseau...)

merci

Rem$
 

Hervé

XLDnaute Barbatruc
re

alors cette macro gère dans la colonne B les ###### si bien sur tu as une feuille nommée '############'

de plus, elle effaces avant les données inscrites dans les autres feuilles.

Sub Bouton8_QuandClic()
Dim c As Range
Dim i As Byte
Dim derligne As Integer
Dim numero As String

For Each c In Range('b2:b' & Range('b65536').End(xlUp).Row)
If c <> '' Then
If c = '##########' Then
numero = '##########'
Else
numero = Mid(c, 3, 2)
End If

With Sheets(numero)
&nbsp; &nbsp; derligne = .Range('a65536').End(xlUp).Row + 1
&nbsp; &nbsp; .Rows('2:' & derligne).ClearContents
&nbsp; &nbsp;
For i = 1 To 4
&nbsp; &nbsp; &nbsp; &nbsp; .Cells(derligne, i) = Cells(c.Row, i)
&nbsp; &nbsp;
Next i
End With
End If
Next c
End Sub



Par contre , petite question : que deviennent les données dans la 1ère feuille après traitement ?

salut
 

Rem$

XLDnaute Junior
re

en fait la feuil1 est partagée sur le reseau et consultable apres elle est déplacée pour archive. les données sont elles aussi archivées.

ce tri permettra aux agences de pouvoir visionner rapidement les N° qui les concernent car on ne peut pas filtrer une feuille partagée avec les outils classiques d'excel....

la feuil1 étant la base de travail, elle reste tel kelle....

je teste de suite la suite de la macro

Rem$
 

Hervé

XLDnaute Barbatruc
Bonjour tout le monde
salut rem$

oui, c'est pour ca que je te demandais ce que devenais les données de la feuille 1 après traitement.

comment arrivent les données en feuille1, une fois par jour, plusieurs fois, d'une maniere globale ou juste une mise à jour ?

En attendant une réponse, je te souhaite une bonne journée.

Salut
 

Discussions similaires

Statistiques des forums

Discussions
312 305
Messages
2 087 078
Membres
103 455
dernier inscrit
saramachado