J'ai dans une feuille de calcul, un tableau qui constitue une base de
donnée. Ce BD est
constitué comme ceci...
- Les lignes 1 à 4 sont réservées à des titres et commentaires... Elles sont
fixes.
- La ligne 5 (de B5 à J5) contient les intitulés des colonnes. Sur ces 9
cellules sont activés
les filtres automatique, ce qui fonctionne très bien.
- La place B6 à J2000 contient mes données...
Désireux de voir les utilisateurs pouvoir faire des tris en cliquant
simplement sur un bouton
(placé dans chaque cellule de la ligne de titre), j'ai enregistré des macros
(une pour chaque
colonne de tri). Voici à quoi ça ressemble (je ne mets que les 2 premières
mais elles sont
toutes sur le même schéma) :
--------------------------------------------------------------------------------------------
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 28/09/2004 par X
' Tri par societe
'
Range("B5").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Range("B5:J2000").Select
Selection.Sort Key1:=Range("B5"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("B6").Select
End Sub
Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 28/09/2004 par X
' Tri par activite
'
Range("C5").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Range("B5:J2000").Select
Selection.Sort Key1:=Range("C5"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("C6").Select
End Sub
--------------------------------------------------------------------------------------------
J'ai du étendre la sélection à la ligne de titre car si je partait de
B6:J2000, la ligne 6 était
prise pour titre et n'était pas triée...
*** Première question : Comme définir cette ligne de titre comme entête du
tableau afin qu'elle
ne bouge plus et ne soit incluse dans le tri !?
Jusque là, tout va à peu près bien... Mais comme ce tableau est destiné à
être utilisé par une 10aine
de personnes, je l'ai enregistré sur un serveur auquel tout le monde
accède... Le Hic, c'est
que si quelqu'un ouvre ce fichier, les suivants ne peuvent l'ouvrir qu'en
"Lecture seule" !
Pour cette raison, j'ai activé le partage de fichier dans excel... Et c'est
là que les ennuis
commencent...
Au moment de ce partage, une sauvegarde s'effectue et Excel dit
"Modification des macros impossible
dans un document partagé), ce qui semble normal et pas gênant !?
*** Certains utilisateurs ouvrent le fichier, mais le défilement vertical
dans le tableau ne s'effectue
pas !!! Alors que chez d'autres (même Excel 9.0, même OS 98ME)... WHY ?
*** Dans certains cas, les tris ne fonctionnent pas et sèment la zizanie
dans la ligne 5 (de titre),
qui est incluse dans le tri ! (La ligne de titre se retrouvant ainsi au
milieu du tableau !!!)
Au bout d'un moment, il arrive même que cliquer sur un bouton de tri
provoque une
erreur qui plante excel !! :
-------------------------------------------------
Microsoft Visual Basic
Erreur d'exécution '-2147417848 (80010108)':
Erreur Automation
L'objet invoqué s'est déconnecté de ses clients.
--------------------------------------------------
Alors, si vous avez des idées pour me sortir de là, je serai ravi....
Range("C6").Select End Sub ---------------------------------------------------------- ----------------------------------
J'ai du étendre la sélection à la ligne de titre car si je partait de
B6:J2000, la ligne 6 était prise pour titre et n'était pas triée... *** Première question : Comme définir cette ligne de titre comme entête du
tableau afin qu'elle ne bouge plus et ne soit incluse dans le tri !?
Jusque là, tout va à peu près bien... Mais comme ce tableau est destiné à
être utilisé par une 10aine de personnes, je l'ai enregistré sur un serveur auquel tout le monde
accède... Le Hic, c'est que si quelqu'un ouvre ce fichier, les suivants ne peuvent l'ouvrir qu'en
"Lecture seule" !
Pour cette raison, j'ai activé le partage de fichier dans excel... Et c'est
là que les ennuis commencent...
Au moment de ce partage, une sauvegarde s'effectue et Excel dit
"Modification des macros impossible dans un document partagé), ce qui semble normal et pas gênant !?
*** Certains utilisateurs ouvrent le fichier, mais le défilement vertical
dans le tableau ne s'effectue pas !!! Alors que chez d'autres (même Excel 9.0, même OS 98ME)... WHY ?
*** Dans certains cas, les tris ne fonctionnent pas et sèment la zizanie
dans la ligne 5 (de titre), qui est incluse dans le tri ! (La ligne de titre se retrouvant ainsi au
milieu du tableau !!!) Au bout d'un moment, il arrive même que cliquer sur un bouton de tri
provoque une erreur qui plante excel !! :
------------------------------------------------- Microsoft Visual Basic Erreur d'exécution '-2147417848 (80010108)':
Erreur Automation L'objet invoqué s'est déconnecté de ses clients. --------------------------------------------------
Alors, si vous avez des idées pour me sortir de là, je serai ravi....
Merci d'avance à tous les compétents du coin ;)
.
Zobby la mouche
pour la première question : Sub Macro1() ' ' Macro1 Macro ' Macro enregistrée le 28/09/2004 par X ' Tri par societe
' Range("B6:J2000").Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlNo, _ OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom End Sub
??? Je ne comprends pas... Un commentaire d'explication aurait été bienvenu... Si je copie ça à la place de ma macro, il y a plein d'erreur de compilation !!!
pour la première question :
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 28/09/2004 par X
' Tri par societe
'
Range("B6:J2000").Sort Key1:=Range("B6"),
Order1:=xlAscending, Header:=xlNo,
_
OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
End Sub
??? Je ne comprends pas... Un commentaire d'explication aurait été
bienvenu... Si je copie ça à la place de ma macro, il y a plein d'erreur
de compilation !!!
pour la première question : Sub Macro1() ' ' Macro1 Macro ' Macro enregistrée le 28/09/2004 par X ' Tri par societe
' Range("B6:J2000").Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlNo, _ OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom End Sub
??? Je ne comprends pas... Un commentaire d'explication aurait été bienvenu... Si je copie ça à la place de ma macro, il y a plein d'erreur de compilation !!!