Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Syntaxe pour boucle FOR..NEXT

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

GillesC

XLDnaute Occasionnel
Bonjour à tous.
Mon problème :
J'ai 3 variables :
Cpt1=0
Cpt2=0
Cpt3=0
Je fais ma boucle pour que ces variables s'enrichissent suivant un certain critère :
For i = 1 to 3
If ActiveCell.value= i then
Cpt & i = (Cpt & i) + 1
end if
NEXT
Mon problème : Excel refuse "Cpt & i = (Cpt & i) + 1"
Quelle syntaxe employer SVP?
Merci
 
Re : Syntaxe pour boucle FOR..NEXT

bonjour

il faut que tu passes par un tableau de variables, comme ceci :

Code:
Dim cpt(1 To 3)
Dim i As Byte

For i = 1 To 3
    If ActiveCell.Value = i Then
        cpt(i) = cpt(i) + 1
    End If
Next i

salut
 
Re : Syntaxe pour boucle FOR..NEXT

Bonsoir GillesC, Hervé,

Je me permets d'ajouter qu'on peut aussi définir le type de tableau déclaré si on veut optimiser au mieux les ressources utilisées par la macro et éviter ainsi l'utilisation du type Variant, gros consommateur de ressources... pour un simple comptage.
Suivant le nombre maxi qu'on peut espérer obtenir de ces compteurs :

Jusqu'à 255 maxi
Dim cpt(1 To 3) As Byte

ou jusqu 'à 32 767 maxi
Dim cpt(1 To 3) As Integer

ou au delà (2 147 483 647 maxi)
Dim cpt(1 To 3) As Long

Cordialement,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
15
Affichages
786
Réponses
7
Affichages
538
Réponses
8
Affichages
780
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…