Copie les cellules seulement si c'est complété

Lili77

XLDnaute Nouveau
Bonjour à tous,

Je suis nouvelle dans ce forum et je sollicite de votre part une aide afin d'adapter un code vba existant.

Ce code me permet de copier des cellules vers une autre feuille à condition que la donnée RM soit choisie.

Toutefois, j'aimerais également qu'il m'interdise de copier les données si certaines d'entres elles sont vides et qu'il me le signale via MsgBox.

C'est vraiment urgent. Est-ce qu'il y a une bonne âme qui pourrait m'aider ??

Par avance, je vous remercie de l'intérêt que vous porterez à ma demande

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
 
Dernière édition:

Statistiques des forums

Discussions
312 379
Messages
2 087 779
Membres
103 663
dernier inscrit
b4ri5.c