Si case non vide --> verrouillage de celles-ci

Boris85 -  
Le Pingou Messages postés 12249 Date d'inscription   Statut Contributeur Dernière intervention   -

Bonjour,

J'utilise un fichier Excel qui répertorie dans une colonne des numéros. Ceux-ci s'écrivent à chaque fois que je scanne un code-barre.

J'aimerai savoir s'il étai possible de verrouiller ces cases une fois qu'elles sont non vides.

Merci par avance 

A voir également:

3 réponses

PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 

Bonjour

Je suppose que si le code scanné s'inscrit sur la feuille il doit avoir une macro pour réaliser cette opération, donc il doit falloir ajouter cette opération dans la macro

Voir avec les personnes compétentes en VBA 


0
Boris85
 

Bonjour,

Merci de votre retour.

Il n'y a pas besoin de macro.La douchette remplace un clavier, elle écrit directement la valeur attribué par le code-barre.

On peut retire la douchette de ma problématique.

J'aimerai tout simplement pouvoir empêcher la modification de cases qui seront pleines. Néanmoins, Il faut surement passer par de la VBA

0
Le Pingou Messages postés 12249 Date d'inscription   Statut Contributeur Dernière intervention   1 458 > Boris85
 

Bonjour,

Il vaut la peine de consulter le poste 2...!

0
Le Pingou Messages postés 12249 Date d'inscription   Statut Contributeur Dernière intervention   1 458
 

Bonjour,

Supposer les codes en colonne A, vous devez d'abord déverrouiller toutes les cellules de la colonne A. 

Vous pouvez utiliser le code suivant à mettre dans le module de la feuille concernée.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
    ActiveSheet.Unprotect
    With Range("A" & Target.Row)
        .Locked = True
        .FormulaHidden = False
    End With
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub

0
Boris85
 

Bonjour,

Merci pour ta réponse rapide, je ne l'avais pas vu.

Cela fonctionne correctement.

Comment puis-je l'appliquer aux 5 première colonnes de mon tableau A:E?

0
Le Pingou Messages postés 12249 Date d'inscription   Statut Contributeur Dernière intervention   1 458
 

Bonjour,

Les 2 modifications, ligne 1 et 3:

If Target.Column < 6 Then
........
    
With Range(Target.Address)

0