VBA - AutoFill

Bonjour et excellente année à tous

J'ai un souci pour appliquer une condition et l'étendre à toutes les cellules de la colonne.

En résumé, si les cellules des colonnes C et E ne sont pas vides, alors dans les cellules des colonnes BF et BE, il faut inscrire "1". "Mon" AutoFill ne reprend que le cas de la première cellule (C8 et E8).

Voici mon code. Comment faut il procéder ?

Option Explicit

Dim Derligne As Long

Sub Macro2()

'

' Ajout Colonne nb stagiaires

'

Range("BE7").Select

Selection.EntireColumn.Insert , CopyOrigin:=xlFormatFromLeftOrAbove

ActiveCell.FormulaR1C1 = "NbreStag"

'Comptage Stagiaires

Derligne = Range("B" & Rows.Count).End(xlUp).Row

Range("BE8").Select

If Not IsEmpty(Range("C8")) Then

Range("BE8") = "1"

Else

Range("BE8") = "0"

End If

Range("BE8").AutoFill Destination:=Range("BE8:BE" & Derligne)

' Ajout Colonne nb Sorties

'

Range("BF7").Select

Selection.EntireColumn.Insert , CopyOrigin:=xlFormatFromLeftOrAbove

ActiveCell.FormulaR1C1 = "NbreSorties"

'Comptage Sorties

Derligne = Range("B" & Rows.Count).End(xlUp).Row

Range("BF8").Select

If IsDate(Range("E8")) Then

Range("BF8") = "1"

Else

Range("BF8") = "0"

End If

Range("BF8").AutoFill Destination:=Range("BF8:BF" & Derligne)

End Sub

Salut Kalagan,

à tester

Sub Macro2()
Dim Derligne As Long
Dim i As Integer

Derligne = Range("B" & Rows.Count).End(xlUp).Row
For i = 8 To Derligne
If Not IsEmpty(Range("C" & i)) Then
Range("BE" & i) = 1
Else
Range("BE" & i) = 0
End If

If Not IsEmpty(Range("E" & i)) Then
Range("BF" & i) = 1
Else
Range("BF" & i) = 0
End If
End Sub

Merci à toi, mais je reste avec le même problème : si la cellule C8 est pleine, alors toutes les cellules de la colonne BE sont égales à 1 et si la cellule C8 est vide, alors toutes les cellules de la colonne BE sont égales à 0

Sorry c'est ma faute

j'ai réctifié le code en haut

Sorry c'est ma faute

j'ai réctifié le code en haut

Super ! Ca fonctionne. Merci à toi

Excellent

Rechercher des sujets similaires à "vba autofill"