Code VBA qui tourne mais rien ne se passe

Bonjour,

Voici le code que j'ai réalisé :

Sub recherche()
Dim i
Dim j
For i = 2 To F2 + 1

For j = 2 To F2 + 1
cj = Worksheets("Feuil1").Range("Cj").Value
cj1 = Worksheets("Feuil1").Range("Cj+1").Value
ai = Worksheets("Feuil1").Range("Ai").Value
ai1 = Worksheets("Feuil1").Range("Ai+1").Value
dj = Worksheets("Feuil1").Range("Dj").Value
bi = Worksheets("Feuil1").Range("Bi").Value
bi1 = Worksheets("Feuil1").Range("Bi+1").Value

If ai = cj Then bi = dj Else If cj < di And cj > di1 Then dj = (ai + ai1) / 2
Next j
Next i

End Sub

Aucune erreur n'apparaît mais quand le code tourne rien ne se passe

Bonjour,

rectifie comme ceci (il n'y a que le début, fais le reste)

cj = Worksheets("Feuil1").cells(j,"C").Value
cj1 = Worksheets("Feuil1").cells(j+1,"C").Value
ai = Worksheets("Feuil1").cells(i,"A").Value
ai1 = Worksheets("Feuil1").cells(i+1,"A").Value
etc...

merci beaucoup!!!!

Re,

Tu peux aussi comme cela

cj = Worksheets("Feuil1").Range("C" & j).Value
cj1 = Worksheets("Feuil1").Range("C" & j+1).Value

Malheureusement, après les modifs proposées et des corrections de ma part, rien ne se passe encore....

Voici mon code actuellement

Sub recherche()
Dim i
Dim j
For i = 2 To 10

For j = 2 To 10
cj = Worksheets("Q_Houdelaincourt").Cells(j, 3).Value
ai = Worksheets("Q_Houdelaincourt").Cells(i, 1).Value
ai1 = Worksheets("Q_Houdelaincourt").Cells(i + 1, 1).Value
dj = Worksheets("Q_Houdelaincourt").Cells(j, 4).Value
bi = Worksheets("Q_Houdelaincourt").Cells(i, 2).Value
bi1 = Worksheets("Q_Houdelaincourt").Cells(i + 1, 2).Value

If ai = cj Then bi = dj Else If cj < ai And cj > ai1 Then dj = (bi + bi1) / 2
Next j
Next i

End Sub

Place un fichier exemple sans données confidentielles

Merci pour le temps que vous prenez!

Re,

Déjà

For i = 2 To Range("F2") + 1
For j = 2 To Range("F2") + 1

ensuite

If ai = cj Then bi = dj Else If cj < di And cj > di1 Then dj = (ai + ai1) / 2

dj, di & di1 ne correspondent à rien

cj1 & bi1 ne sert à rien

sinon après avoir résolu le problème des variables (dj, di & di1)

Sub recherche()
Dim i&, j&, cj, cj1, ai, ai1, dj, bi, bi1, di, di1
  For i = 2 To Range("F2") + 1
    For j = 2 To Range("F2") + 1
      cj = Worksheets("Feuil1").Range("C" & j).Value
      cj1 = Worksheets("Feuil1").Range("C" & j + 1).Value
      ai = Worksheets("Feuil1").Range("A" & i).Value
      ai1 = Worksheets("Feuil1").Range("A" & i + 1).Value
      dj = Worksheets("Feuil1").Range("D" & j).Value
      bi = Worksheets("Feuil1").Range("B" & i).Value
      bi1 = Worksheets("Feuil1").Range("B" & i + 1).Value
    If ai = cj Then bi = dj Else If cj < di And cj > di1 Then dj = (ai + ai1) / 2
    Next j
  Next i

End Sub

Merci beaucoup !

Cela semble fonctionner, je suis en attente du résultat car mon fichier est lourd.

Bonne journée.

Rechercher des sujets similaires à "code vba qui tourne rien passe"