Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Tri d'un fichier excel sans l'ouvrir

2 réponses
Avatar
Michel MORICE
Bonsoir à tous.

Quelqu'un aurait'il la gentillesse de m'aider ?
J'ai besoin de trier un fichier Excel, mais sans l'ouvrir visuellement.
Est-ce possible ?
J'ai essayé le prog suivant mais je récupère mon fichier vidé de tous ses
éléments !!!

Sub TriBase()
Set FicBase = GetObject(NomFichierXls)
With FicBase.Worksheets(1)
.Activate
.Cells.Select
Selection.Sort Key1:=.Range("AM2"), Order1:=xlAscending,
Key2:=.Range("L2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=
_
False, Orientation:=xlTopToBottom
End With
FicBase.Save
FicBase.Close
Set FicBase = Nothing
End Sub

Merci

Michel

2 réponses

Avatar
FFO
Salut à toi

Lorsque tu exécutes ce code tu ouvres un fichier en mode masqué dans excel
Tu effectues les instructions et tu enregistres l'ensembles des
modifications réalisées y compris le mode masqué
Conséquence à l'ouverture suivante le mode masqué de ce document est maintenu
donc bienqu'ouvert tu ne le vois pas

2 solutions

soit aprés son ouverture tu le démasques ainsi :

Fenêtre/Afficher
Sélectionne ton document et OK

soit tu rajoutes la ligne de commande suivante dans ta macro :

Windows("Document.Xls").Visible = True

Document.xls étant le nom de ton fichier

Ce qui donne le code final :

Sub TriBase()
Set FicBase = GetObject(NomFichierXls)
With FicBase.Worksheets(1)
.Activate
.Cells.Select
Selection.Sort Key1:=.Range("AM2"), Order1:=xlAscending,
Key2:=.Range("L2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=
_
False, Orientation:=xlTopToBottom
End With
Windows("Document.Xls").Visible = True
FicBase.Save
FicBase.Close
Set FicBase = Nothing
End Sub

Celà devrait répondre à ton attente

Dis moi !!!


Bonsoir à tous.

Quelqu'un aurait'il la gentillesse de m'aider ?
J'ai besoin de trier un fichier Excel, mais sans l'ouvrir visuellement.
Est-ce possible ?
J'ai essayé le prog suivant mais je récupère mon fichier vidé de tous ses
éléments !!!

Sub TriBase()
Set FicBase = GetObject(NomFichierXls)
With FicBase.Worksheets(1)
.Activate
.Cells.Select
Selection.Sort Key1:=.Range("AM2"), Order1:=xlAscending,
Key2:=.Range("L2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=
_
False, Orientation:=xlTopToBottom
End With
FicBase.Save
FicBase.Close
Set FicBase = Nothing
End Sub

Merci

Michel





Avatar
mormic
Bonsoir FFO

Merci beaucoup pour tes explications claires et précises.
Je me doutais un peu de cela car je voyais le fichier dans l'explorateur
Windows mais rien n'apparaissait lorsque j'ouvrais le fichier.
Je vais de suite ajouté cette instruction.
Merci encore
@+

Michel

"FFO" a écrit dans le message de news:

Salut à toi

Lorsque tu exécutes ce code tu ouvres un fichier en mode masqué dans excel
Tu effectues les instructions et tu enregistres l'ensembles des
modifications réalisées y compris le mode masqué
Conséquence à l'ouverture suivante le mode masqué de ce document est
maintenu

donc bienqu'ouvert tu ne le vois pas

2 solutions

soit aprés son ouverture tu le démasques ainsi :

Fenêtre/Afficher
Sélectionne ton document et OK

soit tu rajoutes la ligne de commande suivante dans ta macro :

Windows("Document.Xls").Visible = True

Document.xls étant le nom de ton fichier

Ce qui donne le code final :

Sub TriBase()
Set FicBase = GetObject(NomFichierXls)
With FicBase.Worksheets(1)
.Activate
.Cells.Select
Selection.Sort Key1:=.Range("AM2"), Order1:=xlAscending,
Key2:=.Range("L2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase: > _
False, Orientation:=xlTopToBottom
End With
Windows("Document.Xls").Visible = True
FicBase.Save
FicBase.Close
Set FicBase = Nothing
End Sub

Celà devrait répondre à ton attente

Dis moi !!!


Bonsoir à tous.

Quelqu'un aurait'il la gentillesse de m'aider ?
J'ai besoin de trier un fichier Excel, mais sans l'ouvrir visuellement.
Est-ce possible ?
J'ai essayé le prog suivant mais je récupère mon fichier vidé de tous
ses


éléments !!!

Sub TriBase()
Set FicBase = GetObject(NomFichierXls)
With FicBase.Worksheets(1)
.Activate
.Cells.Select
Selection.Sort Key1:=.Range("AM2"), Order1:=xlAscending,
Key2:=.Range("L2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1,
MatchCase: > > _


False, Orientation:=xlTopToBottom
End With
FicBase.Save
FicBase.Close
Set FicBase = Nothing
End Sub

Merci

Michel