SPACE$ |
Répète des espaces |
|---|---|
| Visual Basic | |
Syntaxe
|
Function SPACE$(n As Long) As String |
Paramètres
| Nom | Description |
|---|---|
| n | Ce paramètre permet d'indiquer l'expression contenant le nombre à traiter |
Description
Cette fonction répète un caractère d'espace plusieurs fois sous forme de chaîne de caractères.
Remarques
- La fonction SPACE$ est très similaire à SPACE, mais la présence du symbole $ dans son nom indique qu'elle est optimisée pour manipuler directement des chaînes de caractères (String). Cela permet de réduire légèrement la surcharge d'exécution en supprimant les conversions internes inutiles par rapport à SPACE, surtout dans des contextes répétitifs.
- La syntaxe Function SPACE$(n As Long) As String montre que le paramètre attendu est de type Long, ce qui autorise la création de chaînes de très grande longueur. Toutefois, comme pour SPACE, il est important de ne pas demander des chaînes de tailles trop excessives pour éviter des problèmes de mémoire ou de lenteur.
- Dans la description, on rappelle que SPACE$ sert uniquement à répéter le caractère espace (" "), sans possibilité native de répéter d'autres caractères. Si on veut personnaliser le remplissage (comme avec des étoiles), il faut associer SPACE$ à une fonction de remplacement, comme Replace, ce que montre l'exemple fourni.
- L'exemple donné illustre bien l'utilisation typique de SPACE$ pour insérer un espace entre deux lettres ou créer une série d'astérisques en remplacement des espaces. Cela montre une pratique intéressante : utiliser SPACE$ comme un générateur rapide de structures répétitives dans des chaînes de caractères.
- Il est essentiel de noter que SPACE$ est historiquement associé à la compatibilité avec d'anciens langages BASIC où les versions avec $ (comme MID$, LEFT$, RIGHT$) étaient préférées pour des performances légèrement meilleures. Cette convention reste valable en Visual Basic 6 et est encore supportée dans Visual Basic for Applications (VBA).
- Si une valeur négative est fournie à SPACE$, une erreur d'exécution est déclenchée. Il est donc recommandé de sécuriser la valeur passée, notamment si elle dépend de calculs dynamiques ou de saisies utilisateurs. Un test préalable (par exemple If n >= 0 Then) garantit un fonctionnement sûr.
- Dans des contextes modernes de programmation, on utilise souvent SPACE$ pour formater manuellement des sorties texte alignées, en particulier dans des fichiers texte plats, des exports CSV ou des affichages dans des consoles sans mise en forme automatique. Cela reste une solution rapide et fiable pour des besoins simples.
- Enfin, la différence pratique entre SPACE et SPACE$ est assez subtile aujourd'hui, mais dans des boucles intensives ou des programmes exigeant une optimisation fine, privilégier SPACE$ peut légèrement améliorer la performance globale. Cela devient pertinent dans des programmes historiques ou dans des macros VBA qui doivent rester très rapides.
Exemple
Voici un exemple d'une utilisation typique de cette fonction :
on obtiendra le résultat suivant :
A BA**********B
Voir également
Langage de programmation - Turbo Pascal - String - Exemple (Space)
Dernière mise à jour : Lundi, le 19 novembre 2012