Erreur de syntaxe

Lid2405 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
romain7254 Messages postés 1071 Statut Membre -
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

  1. Zoul67 Messages postés 2001 Statut Membre 149
     
    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
  2. romain7254 Messages postés 1071 Statut Membre 297
     
    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