Equivalent du ":" dans VBA [Résolu/Fermé]

Signaler
-
 RedJo -
Bonjour,

Je débute dans la programmation VBA et je cherche à savoir qu'il existe dans ce langage un équivalent au ":" qu'on utilise notamment dans MatLab ou C lorsque l'on traite des tableaux à plusieurs dimensions, par exemple comme ceci :

For i =1:10
Tableau(i,:) = "Machin"
Next

Je sais que le premier ":" se remplace par un "To" mais ce que je cherche c'est la même chose dans la définition des bornes du tableau.

Merci d'avance.


2 réponses

Messages postés
9496
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
7 juillet 2020
1 858
bonsoir

for i = 1 to 10
  tableau(i) = "Machin" & i
next i


devrait aller
Messages postés
9496
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
7 juillet 2020
1 858
au re-vu de ta question, je complete un peu

declaration d'un tableau a 2 dimensions d'entiers, les indices allant de 0 à 10
dim t(10,10) as long

RQ. on peut imposer un plage d'indice commençant a 1 avec
Option base 1
a placer en tete de module

bonne suite
Je m'excuse car je n'ai pas été assez clair dans la description de mon problème.

L'idée c'est qu'on part d'un tableau à 2 dimensions, par exemple de longueur 10 dans chaque dimension :

Dim tabl() As String
Redim tabl(10,10)

Disons ensuite que pour les 5 premières lignes du tableau on veuille attribuer la valeur "Machin", mais ce dans toutes les colonnes associées aux lignes 1 à 5 (ou 0 à 4 peu importe)
Pour faire cette instruction je sais qu'en Matlab on peut écrire

tabl( 1 : 5 ; : ) = "Machin"

Ici les ":" servent à indiquer au compilateur de prendre toutes les lignes entre 1 et 5 puis toutes les colonnes du tableau. Cette syntaxe évite de passer par deux boucles For imbriquées ce qui allège la syntaxe au final.
Ce que je cherche donc à savoir c'est s'il existe le même genre de raccourci de syntaxe dans VBA ?
Messages postés
16171
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
9 juillet 2020
2 989
bonjour
hélas , non!
Ha ? Vraiment dommage alors :,(

Merci quand même !