Erreur de syntaxe

Fermé
Lid2405 Messages postés 5 Date d'inscription mercredi 18 septembre 2013 Statut Membre Dernière intervention 25 février 2014 - Modifié par pijaku le 25/02/2014 à 16:12
romain7254 Messages postés 1020 Date d'inscription mardi 23 décembre 2008 Statut Membre Dernière intervention 10 janvier 2018 - 25 févr. 2014 à 15:10
Bonjour,

je suis débutante sur VBA et cherche à faire une boucle For mais j'ai une erreur dans ma syntaxe que je n'arrive pas à détecter. J'ai 3 feuilles dans mon classeur. Quand je tombe sur le contenu de la cellule en ligne 6 colonne A, je veux faire la différence entre cells(6,2) de la feuille 3 et cells(2,3) de la feuille 2 et mettre cette valeur dans la cells(6,3).
Je veux faire cela pour toutes les celulles de la colonne A d'ou la necessité de la boucle For.


Merci beaucoup d'avance pour l'aide.
Voici la macro :

Sub testet()

Dim i As Integer
For i = 6 To 600

If sheets(Feuil3).Cells(i, 1) = sheets(Feuil3).Cells(6, 1) Then sheets(Feuil3).Cells(i, 3) = sheets(Feuil3).(Cells(i, 2) - sheets(Feuil2).Cells(2, 3)

Next i

End Sub

2 réponses

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
25 févr. 2014 à 15:02
Bonjour,

Essaie
Sub testet()

Dim i As Integer
For i = 6 To 600

If sheets("Feuil3").Cells(i, 1).Value = sheets("Feuil3").Cells(6, 1).Value Then
sheets("Feuil3").Cells(i, 3).Value = sheets("Feuil3").Cells(i, 2).Value - sheets("Feuil2").Cells(2, 3).Value
End If

Next i

End Sub

A+
0
romain7254 Messages postés 1020 Date d'inscription mardi 23 décembre 2008 Statut Membre Dernière intervention 10 janvier 2018 297
25 févr. 2014 à 15:10
Bonjour,

Sans fichier d'exemple, difficile de comprendre quelque chose.

Est-ce-que cela se rapproche de ce que vous voulez ?
Sub test()
Dim rng As Range, cell As Range
Dim i As Integer

Set rng = Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row)

For Each cell In rng.Cells
For i = 6 To 60
If Worksheets(3).Cells(i, 1).Value = Worksheets(3).Cells(6, 1).Value Then
Worksheets(3).Cells(i, 3).Value = Worksheets(3).Cells(i, 2) - Worksheets(2).Cells(2, 3)
End If
Next i
Next

End Sub

-1