Code VB qui ne fonctionne pas...

tom59

XLDnaute Nouveau
Bonjour @ all

Cela fait 2 jours que je cherche à écrire un bout de code sans succés.
Pour une raison que j'ignore il ne me donne pas le résultat attendu...

Je vous fait un petit résumé:
j'ai 1 classeur avec 2 feuilles (red et valence). Je voudrais que le code scanne chaque cellule d'une ligne de la feuille valence qui contient 4 données possible : positive, neutre, négative, "vide". En fonction de ce que la cellule contient le code va additionner la valeur d'une cellule(définie dans le code) de la feuille RED.
Quand le code a fini de scanner une ligne il passe à la ligne suivante.

Voici ce que j'ai écris et qui ne fonctionne pas :
Code:
Option Explicit
Sub test()
Dim LNET As String
Dim LPOS As String
Dim LNEG As String
Dim INET As String
Dim IPOS As String
Dim INEG As String
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim l As Integer
Dim m As Integer
LNET = 0
LPOS = 0
LNEG = 0
INET = 0
IPOS = 0
INEG = 0

m = 3

For l = 5 To 49
For i = 3 To 29
j = (2 * i) - 1
k = (2 * i)

If Sheets("Valence").Cells(l, i).Value = "positive" Then
LPOS = LPOS + Sheets("RED").Cells(m, j).Value
IPOS = IPOS + Sheets("RED").Cells(m, k).Value
Else
If Sheets("Valence").Cells(l, i).Value = "neutre" Then
LNET = LNET + Sheets("RED").Cells(m, j).Value
INET = INET + Sheets("RED").Cells(m, k).Value
Else
If Sheets("Valence").Cells(l, i).Value = "négative" Then
LNEG = LNEG + Sheets("RED").Cells(m, j).Value
INEG = INEG + Sheets("RED").Cells(m, k).Value
Else
If Sheets("Valence").Cells(l, i).Value = "" Then
LNEG = LNEG
INEG = INEG
LPOS = LPOS
IPOS = IPOS
LNET = LNET
INET = INET
End If
End If
End If
End If
Next i
Sheets("RED").Cells(m, 72).Value = LNEG
Sheets("RED").Cells(m, 73).Value = LNET
Sheets("RED").Cells(m, 74).Value = LPOS
Sheets("RED").Cells(m, 76).Value = INEG
Sheets("RED").Cells(m, 77).Value = INET
Sheets("RED").Cells(m, 78).Value = IPOS

m = m + 2
Next l
End Sub

Au début j'avais défini les variables LNET LPOS LNET IPOS INET INEG As Long mais cela ne fonctionnait pas car mes données sont à virgule (ex :0.054)

Votre aide est la bienvenue.
Merci d'avance
 
Dernière édition:

Discussions similaires

Réponses
6
Affichages
300

Membres actuellement en ligne

Statistiques des forums

Discussions
312 571
Messages
2 089 808
Membres
104 278
dernier inscrit
LENZY