Bonjour, désolé pour le titre qui sera peut être pas trop explicite par rapport à ma demande mais j'ai du mal à résumer ça en quelques mots .
Voilà tout : J'ai un module simple dans lequel je déclare Ensuite une procédure qui définit cette plage
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Private Sub Init()
Dim MySheet As Worksheet
Set MySheet = Sheets("Liste")
Set Plage = MySheet.Range("A1").CurrentRegion
Set Plage = Plage.Offset(1, 0).Resize(Plage.Rows.Count - 1)
'et ensuite je trie...
Plage.Sort Key1:= 'etc. etc.
'(...)
End Sub
Pour ne pas toujours passer par cette sub Init, par exemple dans ma procédure pour rechercher :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Public Sub Rechercher(ByRef Nom As String, ByRef Pre As String)
Call Init
Dim R As Range
Set R = Plage.Find(Nom)
'(... ...)
End Sub
J'ai pensé à poser une condition dans le style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
If Plage Is Nothing Then Init
Ce qui m'aurait permis de pas systématiquement appeler la procédure notamment dans le cas de plusieurs recherches successives
Oui mais voilà, cette ligne me provoque une erreur
Je pense que quelque chose de basique m'échappe mais je comprends pas
Merci pour votre aide