Bonsoir à tous,
Le code ci-dessous permet de copier des cellules vers une autre feuilles. Mais j'aimerais qu'avant qu'il fasse cette opération, il vérifie s'il y a des cellules vides. Si c'est le cas, il avertit avec un "MsgBox" Données imcomplètes et n'exécute pas la macro.
Par avance, je remercie tous ceux et celles qui me viendront en aide.
Voci le code
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cel As Range
Dim derLig As Long
Dim lignVide As Long
Dim V1
Dim V2
Dim V3
Dim V4
Dim V5
Dim V6
If Target.Column <> 12 Then Exit Sub
derLig = Range("A" & Rows.Count).End(xlUp).Row
If Target.Row <> derLig Then Exit Sub
If Target.Value = "RM" Then
'il y a 6 valeurs à transférer
V1 = Me.Cells(derLig, 1): V2 = Me.Cells(derLig, 2): V3 = Me.Cells(derLig, 4)
V4 = Me.Cells(derLig, 8): V5 = Me.Cells(derLig, 9): V6 = Me.Cells(derLig, 11)
'Ouvrir la feuill GM
With Worksheets("GM")
Set Cel = .Columns(1).Find(Me.Cells(derLig, 1), , xlValues, xlWhole)
If Cel Is Nothing Then
Sheets("GM").Activate
.Unprotect Password:="XENNA"
'Recherche de la première ligne vide
lignVide = .Range("A" & .Rows.Count).End(xlUp).Row + 1
'Copie des valeurs dans la feuille "GM"
.Cells(lignVide, 1) = V1
.Cells(lignVide, 2) = V3
.Cells(lignVide, 4) = V6
.Cells(lignVide, 5) = V2
.Cells(lignVide, 8) = V4
.Cells(lignVide, 9) = V5
.Protect Password:="XENNA"
Else
MsgBox "Enregistrement déjà existant dans la base de données !"
End If
End With
End If
End Sub