[Excel VBA] Limite du nombre de paramètres d'une Sub

Fermé
HadNO - 20 mai 2014 à 13:14
 HadNO - 20 mai 2014 à 15:48
Salut à toutes et tous,
je vous expose mon problème : je fais depuis 2 mois un développement logiciel sous VBA Excel. Et je viens de découvrir que dans l'environnement de programmation Visual Basic (V7) il y a une limite de longueur de ligne. Cela me bloque pour l'une de mes sub qui doit recevoir encore d'autres paramètres.
Donc ma question est : "Comment contourner la limite de longueur de ligne sur VBA 7, sachant que c'est pour la déclaration d'une Sub?"

La déclaration de la sub en question :
Private Sub Recherche_du_plus_proche(ByRef Telement As Integer, ByRef Version As Integer, ByRef Aelement As Integer, ByRef PuissanceLigne As Single, ByRef DistanceTotalLigne As Single, ByVal ColReseau As Integer, ByVal ColReseauAB As Integer, ByVal ColCategorie As Integer, ByVal CoordXCol As Integer, ByVal CoordYCol As Integer, ByVal ImmatCol As Integer, ByVal ColPuissance As Integer, ByRef Tableau_sections() As String, ByVal ReseauSecCol As Integer, ByVal ReseauABSecCol As Integer, ByVal LigneSecCol As Integer, ByVal ColElu As Integer, ByVal ColLocaux As Integer, ByRef LocauxCheck As Boolean, ByRef TableauNbEle() As String, ByVal ReseauEleCol As Integer, ByVal ReseauABEleCol As Integer, ByVal LocauxEleCol As Integer, ByVal NbEleLocauxCol, ByVal NbEleReseau As Integer, ByVal Incrementation As Integer, ByRef TableauAtt() As String, ByVal LigneAttCol As Integer, ByVal NbEleAttCol As Integer, ByVal LocauxAttCol As Integer, ByVal NbMaxAtt As Integer, ByVal FlagSeparation As Boolean, ByVal SomIncrementation As In
teger, ByVal NbEleTotalSide1 As Integer, ByVal NbEleTotalSide2 As Integer)

Et avant d'avoir des petits malins TOUS les paramètres présents sont indispensables dans l'état actuel de l'algorithme.

Merci beaucoup pour votre aide
A voir également:

3 réponses

commentcamarcheeay Messages postés 667 Date d'inscription mercredi 24 février 2010 Statut Membre Dernière intervention 30 mars 2020 86
Modifié par commentcamarcheeay le 20/05/2014 à 14:31
Bonjour,

Pour couper une ligne de code en deux, utilisez le caractère "_".
Exemple :
sub mySub(param1 as Integer, param2 as Integer, _
          param3 as Integer)


Voici un exemple ...

Remarque
Quoique je préfère ne pas utiliser ces formules à rallonge ; en effet, il est possible de rassembler les paramètres qui sont de même nature dans des objets. Par exemple, créer un objet qui prend les infos sur les lignes, un autre sur les chaines de caractères, ... et ta fonction appelle les instances des différents objet.

C. Taha
1
Merci CCMeay je vais tester de ce pas.
0
Cela fonctionne parfaitement.
Merci beaucoup, je ne connaissais pas l'utilisation de ce symbole.
Et moi aussi d'ordinaire j'utilise des object pour ce genre de chose mais c'est interdit par la spec technique que j'ai reçue.

Merci CCMeay
0