VBA recherche cellule dans colonne et calcul

Résolu/Fermé
StagiaireVBA - 21 oct. 2010 à 17:04
 StagiaireVBA - 22 oct. 2010 à 09:41
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

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
21 oct. 2010 à 17:14
Bonjour

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

dans l'atente
0
StagiaireVBA
21 oct. 2010 à 17:18
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
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
21 oct. 2010 à 17:53
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
StagiaireVBA
22 oct. 2010 à 09:41
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