VBA recherche cellule dans colonne et calcul

Résolu
StagiaireVBA -  
 StagiaireVBA -
Bonjour,

Dans une colonne, il y a des cellules vides, je souhaite les parcourir une par une (les cellules vides de ma colonne) et les mettre a la valeure de la cellule qui se situe deux colonnes avant et une ligne au dessu (de la cellule vie en question)

j'ai essayé avec

i=0
Range("D7:D1500").Find("", , xlConstants, xlWhole).Activate

Do While i <> 40
ActiveCell.Value= ActiveCell.Offset(-1, -2).Value
Cells.FindNext(After:=ActiveCell).Activate
i=i+1
loop

mais cela ne fonctionne pas, j'ai le message :

L'indice n'apartient pas a la selection, et la deuxieme ligne est surlignée...

Si quelqu'un a une idée?

Merci d'avance!

3 réponses

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour

    ta variable 'i" sert à quoi? et pourquoi 40 ?

    dans l'atente
    0
  2. StagiaireVBA
     
    Bonjour michel_m,

    Dans la colonne en question il y aura au maximum 40 cellules vide donc le i sert à lui faire repeter 40 fois la recherche pour qu'il les trouve toutes mais qu'il ne parcour pas toutes les cellules de la colonne jusqu'a la 63000 et des poussières.. Enfin c'était l'intention!
    0
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      re,

      essaies
      Sub affecter_cellvide()
      Dim lig As Integer, cptr As Byte
      lig = 6
      For cptr = 1 To 40
          lig = Columns(4).Find("", Cells(lig, 4), xlValues).Row
          Cells(lig, 4) = Cells(lig - 1, 2)
      Next
      
      End Sub
      
      
      0
  3. StagiaireVBA
     
    Bonjour,

    Merci beacoup, ca fonctionne parfaitement, je viens tout juste de le tester.
    C'est une bonne journée qui commence!

    Bonne Journée
    0