Incrementer un second indice a l'interieur d'une boucle "For"
C_Arnaud
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Patrice33740 Messages postés 8561 Date d'inscription Statut Membre Dernière intervention -
Patrice33740 Messages postés 8561 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous,
Il ne me semble pas avoir vu la réponse a ma question sur ce forum, aussi je me permet de créer ce nouveau post.
J'ai deux vecteurs ("spx" et "nchobs") de meme dimension (x, 0), dont l'un ("spx") contient certaines valeurs successives duppliquées. Je souhaite obtenir la somme des "nchobs(i, i+1, ...,i+n)" pour chaque spx(i)=spx(i+1)=...=spx(i+n).
Pour cela j'ai créé le code suivant, avec: "nlines" la longueur du vecteur "nchobsuniq" et "nlinex" la longueur des vecteurs "spx" et "nchobs".
La variable "spsx" est de type "Variant", définie bien avant dans le code et vérifiée.
Dim nchobs() As Long
Dim nchobsuniq() As Variant
j = 0
k = 0
ReDim nchobsuniq(nlines - 1, j)
nchobsuniq(0, j) = nchobs(0, j)
'
For i = 1 To linex - 1
If spx(i, 6) <> spx(i - 1, 6) Then
k = k + 1
nchobsuniq(k, j) = nchobs(i, j)
Else
nchobsuniq(k, j) = nchobsuniq(k, j) + nchobs(i, j)
End If
MsgBox ("nchobsuniq(k): " & nchobsuniq(k, j))
Next i
La boucle ne tourne pas, et VBA ne me renvoie aucun message d'erreur. D'autres MsgBox ont été ajouté pour vérifier que l'on rentre bien dans la boucle, sans succes.
Je suis donc a la recherche d'une resolution ou d'une solution alternative me permettant de parvenir a mes fins :)
Merci d'avance.
edit 1: Je travaille sur Microsoft Excel 2010.
Il ne me semble pas avoir vu la réponse a ma question sur ce forum, aussi je me permet de créer ce nouveau post.
J'ai deux vecteurs ("spx" et "nchobs") de meme dimension (x, 0), dont l'un ("spx") contient certaines valeurs successives duppliquées. Je souhaite obtenir la somme des "nchobs(i, i+1, ...,i+n)" pour chaque spx(i)=spx(i+1)=...=spx(i+n).
Pour cela j'ai créé le code suivant, avec: "nlines" la longueur du vecteur "nchobsuniq" et "nlinex" la longueur des vecteurs "spx" et "nchobs".
La variable "spsx" est de type "Variant", définie bien avant dans le code et vérifiée.
Dim nchobs() As Long
Dim nchobsuniq() As Variant
j = 0
k = 0
ReDim nchobsuniq(nlines - 1, j)
nchobsuniq(0, j) = nchobs(0, j)
'
For i = 1 To linex - 1
If spx(i, 6) <> spx(i - 1, 6) Then
k = k + 1
nchobsuniq(k, j) = nchobs(i, j)
Else
nchobsuniq(k, j) = nchobsuniq(k, j) + nchobs(i, j)
End If
MsgBox ("nchobsuniq(k): " & nchobsuniq(k, j))
Next i
La boucle ne tourne pas, et VBA ne me renvoie aucun message d'erreur. D'autres MsgBox ont été ajouté pour vérifier que l'on rentre bien dans la boucle, sans succes.
Je suis donc a la recherche d'une resolution ou d'une solution alternative me permettant de parvenir a mes fins :)
Merci d'avance.
edit 1: Je travaille sur Microsoft Excel 2010.
A voir également:
- Incrementer un second indice a l'interieur d'une boucle "For"
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Indice téléphonique - Guide
- Logiciel aménagement intérieur gratuit - Guide
- Idm for mac - Télécharger - Téléchargement & Transfert
- Copytrans heic for windows - Télécharger - Visionnage & Diaporama