Objet VBA spécifique : ListObject
Bonjour,
Suite à une discussion avec Mr Pierre Fauconnier concernant la modification automatique de zone d'impression, la solution la plus idéale est de créer une liste (Données / Liste / Créer une liste).
Après avoir donc créer ma liste, je me suis aperçu que je ne pouvais plus trier (Données / Trier) mes données. En effet le fait de créer une liste "grise" la fonction "Tri".
Voici le code mis à l'ouverture d'Excel :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| Private Sub Workbook_Open()
' supprime le recalcul des cellules
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
'Empecher l'ouverture si fichier deja ouvert sur le reseau par un autre utilisateur
If ThisWorkbook.ReadOnly = True Then
'------avertissement
MsgBox "Ce classeur est en cours de modification par un autre utilisateur" _
& "Il va etre refermé", vbInformation
' -----fermeture
ThisWorkbook.Close
'Else
End If
Sheets("Accueil").Select
' indication heure et date
CreateObject("Wscript.shell").Popup "Bonjour " & Environ("username") & "." & Chr$(13) & Chr$(13) & "Nous sommes le " & Date & " et il est exactement " & Time & "." & Chr$(13) & Chr$(13) & "Une réinitialisation des cellules de la base de données va avoir lieu." & Chr$(13) & Chr$(13) & "Attendre le retour sur la page d'accueil avant toute manipulation.", 10, "Application développée par Graphikris.", vbExclamation
'Défiltre toutes les colonnes
Sheets("Feuil1").Select
Range("A1:DY122").Select
Range("A1:DY121").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("B2").Select
' remet le recalcul des cellules
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic |
Les lignes 29 et 31 font en sorte que le tri aille de A1 à DY121. Si des lignes sont rajoutées voir supprimées, il risque d'avoir un Bug.
Quelqu'un pourrait-il m'aider en insérant l'objet : ListObject (dixit Mr Fauconnier Pierre) dont je ne connais pas l'existence ainsi que la fonction ?
Cordialement
Graphikris.