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
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 :
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 :
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
Partager