Excel VBA
Résolu
texastina
Messages postés
55
Statut
Membre
-
texastina Messages postés 55 Statut Membre -
texastina Messages postés 55 Statut Membre -
Bonjour,
Je vous explique mon problème dans mon tableau je voudrai que
Si A2 est vide alors A2 = A1 si non A2 = à lui même (A2)
Ma formule en forma excel serai comme ceci :
=Si(A2="";A1;A2)
Bien sur ma formule est fausse car "elle contient une référence circulaire"
donc comment contourner ceci ?
J'ai aussi essayé avec le VBA mais rien ne ce passe voici mon code :
Sub Macro1()
Dim I As Integer
I = 1
While I <> 200
If Cells(2, 1) = "" Then
Range("A1").Select
Selection.AutoFill Destination:=Range("A1:A2"), Type:=xlFillDefault
Rows(I & ":" & I).Select
End If
I = I + 1
Wend
End Sub
J'espere avoir été claire
Merci pour vos réponses :)
Je vous explique mon problème dans mon tableau je voudrai que
Si A2 est vide alors A2 = A1 si non A2 = à lui même (A2)
Ma formule en forma excel serai comme ceci :
=Si(A2="";A1;A2)
Bien sur ma formule est fausse car "elle contient une référence circulaire"
donc comment contourner ceci ?
J'ai aussi essayé avec le VBA mais rien ne ce passe voici mon code :
Sub Macro1()
Dim I As Integer
I = 1
While I <> 200
If Cells(2, 1) = "" Then
Range("A1").Select
Selection.AutoFill Destination:=Range("A1:A2"), Type:=xlFillDefault
Rows(I & ":" & I).Select
End If
I = I + 1
Wend
End Sub
J'espere avoir été claire
Merci pour vos réponses :)
A voir également:
- Excel VBA
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
2 réponses
En gros je voudrais que dans ma colonne A chaque cellule vide prenne la valeur de la cellule qui il y a juste au dessu
Bonjour,
En VBA :
Cordialement.
Edit : J'ai changé le code, je m'étais trompé.
En VBA :
Sub Code()
Dim i As Integer
DL = Cells(Application.Rows.Count, 1).End(xlUp).Row 'A adapter, j'ai pris la colonne A comme référence (la plus remplie)
For i = 1 To DL 'Je suis parti de la ligne 1
If Range("A" & i).Value = "" Then
Range("A" & i).Value = Range("A" & i - 1).Value
End If
Next i
End Sub
Cordialement.
Edit : J'ai changé le code, je m'étais trompé.