Vérrouiller une plage si complète

Bonjour

Ce que je cherche à faire est dit dans le titre du sujet

Je joins un exemple fichier avec explications

Je vous remercie

13test-colonne.xlsx (12.59 Ko)

Bonsoir,
Un début de réponse à adapter !?
Cdlt.

11test-colonne.xlsm (28.28 Ko)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Const R As String = "G7:R11"
Dim lCol As Long, n As Double, Rng As Range
    If Not Intersect(Target, Me.Range(R)) Is Nothing And Target.Count = 1 Then
        lCol = Target.Column - Me.Range(R).Column + 1
        Set Rng = Me.Range(R).Cells(1, lCol).Resize(5)
        n = WorksheetFunction.Count(Rng)
        If n = 5 Then Rng.Cells(1).Offset(-1).Select
    End If
End Sub

Hello,

Une autre proposition :

Private Sub Worksheet_Change(ByVal Target As Range)

Dim lng_lim_inf As Long
Dim lng_lim_sup As Long
Dim lng_count As Long
Dim str_lettre As String
Dim rng_cell As Range, rng_valid As Range

If Target.Column <= 18 Then
    lng_lim_inf = 7
    lng_lim_sup = 11
    str_lettre = Split(ActiveCell.Offset(0, Selection.Columns.Count - 1).Address, "$")(1)
    Set rng_valid = Range(str_lettre & lng_lim_inf & ":" & str_lettre & lng_lim_sup)
    For Each rng_cell In rng_valid
        If Not IsEmpty(rng_cell) Then lng_count = lng_count + 1
    Next rng_cell
    If lng_count = (lng_lim_sup - lng_lim_inf) + 1 Then
        ActiveSheet.Unprotect
        rng_valid.Locked = True
        ActiveSheet.Protect
    End If
    Set rng_valid = Nothing
End If
End Sub

Bonjour

Merci pour vos réponses

J'ai retenu celle de Jean-Eric qui fonctionne impeccable

Rag02700 le hic avec la tienne c'est que toutes les colonnes sont vérrouillées,

on ne peut pas continuer a écrire dans les autres colonnes

Bonne journée

Cordialement

Rechercher des sujets similaires à "verrouiller plage complete"