Tri d'un fichier xls

Le
MorMic
Bonsoir à tous

J'essai en vain de trier une feuille excel en VBA en utilisant SORT.
Je dois faire une grosse erreur de compréhension.
Quelqu'un peut-il m'expliquer le pourquoi de la chose ?
Merci d'avance.
Voici mon code:

Private Sub GoButton_Click()
Dim mNomFichierXls As String
mNomFichierXls = Range("A1")
Dim mFicBase As Object
Dim mLgBase As Integer
On Error GoTo GestionErreur
Set mFicBase = GetObject(mNomFichierXls)
With mFicBase.Sheets(1)
mLgBase = .Range("I1").End(xlDown).Row
.Cells.Select
Selection.Sort Key1:=.Range("AN2"), Order1:=xlAscending, _
Key2:=.Range("K2"), Order2:=xlAscending, Header:=xlGuess,
OrderCustom:=1, _
MatchCase:úlse, Orientation:=xlTopToBottom
End With
mFicBase.Save
mFicBase.Close
Set mFicBase = Nothing
GoTo FinSub
GestionErreur:
MsgBox "Erreur N° " & Err
Resume FinSub
FinSub:
End Sub


Michel
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichDenis
Le #4611811
Modifie cette section de cette manière :

Set mFicBase = GetObject(mNomFichierXls)
Set sh = mFicBase.Sheets(1)
With sh
With .Range("I1").CurrentRegion
.Sort Key1:=sh.Range("AN2"), Order1:=xlAscending, _
Key2:=sh.Range("K2"), Order2:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
End With
End With



"MorMic" 46953b88$0$5087$
Bonsoir à tous

J'essai en vain de trier une feuille excel en VBA en utilisant SORT.
Je dois faire une grosse erreur de compréhension.
Quelqu'un peut-il m'expliquer le pourquoi de la chose ?
Merci d'avance.
Voici mon code:

Private Sub GoButton_Click()
Dim mNomFichierXls As String
mNomFichierXls = Range("A1")
Dim mFicBase As Object
Dim mLgBase As Integer
On Error GoTo GestionErreur
Set mFicBase = GetObject(mNomFichierXls)
With mFicBase.Sheets(1)
mLgBase = .Range("I1").End(xlDown).Row
.Cells.Select
Selection.Sort Key1:=.Range("AN2"), Order1:=xlAscending, _
Key2:=.Range("K2"), Order2:=xlAscending, Header:=xlGuess,
OrderCustom:=1, _
MatchCase:úlse, Orientation:=xlTopToBottom
End With
mFicBase.Save
mFicBase.Close
Set mFicBase = Nothing
GoTo FinSub
GestionErreur:
MsgBox "Erreur N° " & Err
Resume FinSub
FinSub:
End Sub


Michel
MorMic
Le #4611781
Merci MichDenis

Si je comprends bien, il faut passer par une variable intermédiaire, une
image en quelquesorte de l'objet préalablement défini. Faut-il aussi le
déclarer par Dim sh as object ?

MM

"MichDenis" Oj5kgw$
Modifie cette section de cette manière :

Set mFicBase = GetObject(mNomFichierXls)
Set sh = mFicBase.Sheets(1)
With sh
With .Range("I1").CurrentRegion
.Sort Key1:=sh.Range("AN2"), Order1:=xlAscending, _
Key2:=sh.Range("K2"), Order2:=xlAscending, Header:=xlYes,
_

OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom

End With
End With



"MorMic" 46953b88$0$5087$
Bonsoir à tous

J'essai en vain de trier une feuille excel en VBA en utilisant SORT.
Je dois faire une grosse erreur de compréhension.
Quelqu'un peut-il m'expliquer le pourquoi de la chose ?
Merci d'avance.
Voici mon code:

Private Sub GoButton_Click()
Dim mNomFichierXls As String
mNomFichierXls = Range("A1")
Dim mFicBase As Object
Dim mLgBase As Integer
On Error GoTo GestionErreur
Set mFicBase = GetObject(mNomFichierXls)
With mFicBase.Sheets(1)
mLgBase = .Range("I1").End(xlDown).Row
.Cells.Select
Selection.Sort Key1:=.Range("AN2"), Order1:=xlAscending, _
Key2:=.Range("K2"), Order2:=xlAscending, Header:=xlGuess,
OrderCustom:=1, _
MatchCase:úlse, Orientation:=xlTopToBottom
End With
mFicBase.Save
mFicBase.Close
Set mFicBase = Nothing
GoTo FinSub
GestionErreur:
MsgBox "Erreur N° " & Err
Resume FinSub
FinSub:
End Sub


Michel







MichDenis
Le #4611771
Si tu veux déclarer la variable sh, fait le de cette façon :

Dim Sh as Worksheet



"MorMic" 4695481b$0$5066$
Merci MichDenis

Si je comprends bien, il faut passer par une variable intermédiaire, une
image en quelquesorte de l'objet préalablement défini. Faut-il aussi le
déclarer par Dim sh as object ?

MM

"MichDenis" Oj5kgw$
Modifie cette section de cette manière :

Set mFicBase = GetObject(mNomFichierXls)
Set sh = mFicBase.Sheets(1)
With sh
With .Range("I1").CurrentRegion
.Sort Key1:=sh.Range("AN2"), Order1:=xlAscending, _
Key2:=sh.Range("K2"), Order2:=xlAscending, Header:=xlYes,
_

OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom

End With
End With



"MorMic" 46953b88$0$5087$
Bonsoir à tous

J'essai en vain de trier une feuille excel en VBA en utilisant SORT.
Je dois faire une grosse erreur de compréhension.
Quelqu'un peut-il m'expliquer le pourquoi de la chose ?
Merci d'avance.
Voici mon code:

Private Sub GoButton_Click()
Dim mNomFichierXls As String
mNomFichierXls = Range("A1")
Dim mFicBase As Object
Dim mLgBase As Integer
On Error GoTo GestionErreur
Set mFicBase = GetObject(mNomFichierXls)
With mFicBase.Sheets(1)
mLgBase = .Range("I1").End(xlDown).Row
.Cells.Select
Selection.Sort Key1:=.Range("AN2"), Order1:=xlAscending, _
Key2:=.Range("K2"), Order2:=xlAscending, Header:=xlGuess,
OrderCustom:=1, _
MatchCase:úlse, Orientation:=xlTopToBottom
End With
mFicBase.Save
mFicBase.Close
Set mFicBase = Nothing
GoTo FinSub
GestionErreur:
MsgBox "Erreur N° " & Err
Resume FinSub
FinSub:
End Sub


Michel







MorMic
Le #4870761
Merci encore MichDenis

Cela ne se plante plus mais j'ai une situation bizarre:
le fichier que je viens de trier, je le sauve, puis je le ferme mais lorsque
je l'ouvre à nouveau, rien n'apparaît, comme si le fichier était creux, vidé
de son contenu ????

Si tu as une idée....

Michel

"MichDenis"
Si tu veux déclarer la variable sh, fait le de cette façon :

Dim Sh as Worksheet



"MorMic" 4695481b$0$5066$
Merci MichDenis

Si je comprends bien, il faut passer par une variable intermédiaire, une
image en quelquesorte de l'objet préalablement défini. Faut-il aussi le
déclarer par Dim sh as object ?

MM

"MichDenis" Oj5kgw$
Modifie cette section de cette manière :

Set mFicBase = GetObject(mNomFichierXls)
Set sh = mFicBase.Sheets(1)
With sh
With .Range("I1").CurrentRegion
.Sort Key1:=sh.Range("AN2"), Order1:=xlAscending, _
Key2:=sh.Range("K2"), Order2:=xlAscending,
Header:=xlYes,


_
OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom

End With
End With



"MorMic" 46953b88$0$5087$
Bonsoir à tous

J'essai en vain de trier une feuille excel en VBA en utilisant SORT.
Je dois faire une grosse erreur de compréhension.
Quelqu'un peut-il m'expliquer le pourquoi de la chose ?
Merci d'avance.
Voici mon code:

Private Sub GoButton_Click()
Dim mNomFichierXls As String
mNomFichierXls = Range("A1")
Dim mFicBase As Object
Dim mLgBase As Integer
On Error GoTo GestionErreur
Set mFicBase = GetObject(mNomFichierXls)
With mFicBase.Sheets(1)
mLgBase = .Range("I1").End(xlDown).Row
.Cells.Select
Selection.Sort Key1:=.Range("AN2"), Order1:=xlAscending, _
Key2:=.Range("K2"), Order2:=xlAscending, Header:=xlGuess,
OrderCustom:=1, _
MatchCase:úlse, Orientation:=xlTopToBottom
End With
mFicBase.Save
mFicBase.Close
Set mFicBase = Nothing
GoTo FinSub
GestionErreur:
MsgBox "Erreur N° " & Err
Resume FinSub
FinSub:
End Sub


Michel












Publicité
Poster une réponse
Anonyme