Excel/figer une ligne
caro
-
caro -
caro -
Bonjour,
J'ai un colonne ou je veux écrire des numéro de BL, si le numéro est absent je mets un point d'interrogation.
Si il y a un point d'interrogation, je veux qu'on ne puisse plus rentrer aucune donnée sur la ligne.
Silvouplait aidez moi!!
En vous remerciant,
Caro
J'ai un colonne ou je veux écrire des numéro de BL, si le numéro est absent je mets un point d'interrogation.
Si il y a un point d'interrogation, je veux qu'on ne puisse plus rentrer aucune donnée sur la ligne.
Silvouplait aidez moi!!
En vous remerciant,
Caro
A voir également:
- Excel/figer une ligne
- Liste déroulante excel - Guide
- Figer ligne excel - Guide
- Déplacer une colonne excel - Guide
- Partager photos en ligne - Guide
- Word et excel gratuit - Guide
4 réponses
Salut,
En supposant que ton fichier est protégé, et que les cellules accessibles sont déverrouillées que la zone concernée est B1 à B50 et que ta cellule ne se déplace pas après validation
Avec ce code lorsque tu saisiras un ? dans cette zone B1:B50 les cellules de la colonne A à la colonne G sur la même ligne se verrouilleront et le fichier se déprotégera. Si un mot de passe pour la protection existe, il conviendra de le saisir dans le code de déprotection de la macro
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B1:B50)) Is Nothing Then
If ActiveCell = "?" Then
ActiveSheet.Unprotect
Range(ActiveCell.Offset(0, -1), ActiveCell.Offset(0, 5)).Select
selection.Locked = True
selection.FormulaHidden = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End If
End Sub
Testes ce code et on en reparle des modifications à apporter.
A+
En supposant que ton fichier est protégé, et que les cellules accessibles sont déverrouillées que la zone concernée est B1 à B50 et que ta cellule ne se déplace pas après validation
Avec ce code lorsque tu saisiras un ? dans cette zone B1:B50 les cellules de la colonne A à la colonne G sur la même ligne se verrouilleront et le fichier se déprotégera. Si un mot de passe pour la protection existe, il conviendra de le saisir dans le code de déprotection de la macro
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B1:B50)) Is Nothing Then
If ActiveCell = "?" Then
ActiveSheet.Unprotect
Range(ActiveCell.Offset(0, -1), ActiveCell.Offset(0, 5)).Select
selection.Locked = True
selection.FormulaHidden = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End If
End Sub
Testes ce code et on en reparle des modifications à apporter.
A+
caro
Je te remercie mais je sais plus du tout me servir de VBA...peux-tu me refaire un petit brifing?
Bonjour,
autre solution avec 'validation'
- Sélectionner les cellules à protéger par exemple les colonnes B à G
- menu 'données / validation...."
- Autoriser: 'personnalisé', formule: =$A1<>"?"
- onglet 'alerte d'erreur': mettre un message explicatif
- valider
un ? en colonne A empeche la saisie sur ces colonnes.
Si le ? est en colonne C, sélectionner les colonnes A:B et D:G avant de mettre la validation.
La formule sera: =$C1<>"?"
eric
autre solution avec 'validation'
- Sélectionner les cellules à protéger par exemple les colonnes B à G
- menu 'données / validation...."
- Autoriser: 'personnalisé', formule: =$A1<>"?"
- onglet 'alerte d'erreur': mettre un message explicatif
- valider
un ? en colonne A empeche la saisie sur ces colonnes.
Si le ? est en colonne C, sélectionner les colonnes A:B et D:G avant de mettre la validation.
La formule sera: =$C1<>"?"
eric
Moi je veux juste figer la ligne..j'ai l'impression que tu fais figer les colonnes en même temps.
Ex: la colonne A c'est la colonne où je remplis les codes, si je mets un points d'interrogation en A1 je veux que la ligne 1 seulement soit figer et pas le reste.De plus j'ai déjà utiliser la fonction validation et il me dit de supprimer les règlages courants.
Ex: la colonne A c'est la colonne où je remplis les codes, si je mets un points d'interrogation en A1 je veux que la ligne 1 seulement soit figer et pas le reste.De plus j'ai déjà utiliser la fonction validation et il me dit de supprimer les règlages courants.
La formule est =$A1<>"?" (absolu colonne/relatif ligne) donc sur la ligne 2 tu testes A2 etc
Toutes les lignes avec ? sont bloquées, sur les autres la saisie est autorisée.
Maintenant si tu as d'autres validations sur les cellules sois tu cumules les tests dans des ET() et des OU() ce qui va pê te compliquer la vie, soit tu fais avec la macro de Mike
eric
PS: je te faisais sélectionner les colonnes pour que ça s'applique sur toutes les lignes... Mais tu peux restreindre à une plage sélectionnée, de B3 à G10 si tu veux. Selon la ligne de la 1ère cellule de ta sélection la formule change. Là ça serait =$A3<>"?"
Toutes les lignes avec ? sont bloquées, sur les autres la saisie est autorisée.
Maintenant si tu as d'autres validations sur les cellules sois tu cumules les tests dans des ET() et des OU() ce qui va pê te compliquer la vie, soit tu fais avec la macro de Mike
eric
PS: je te faisais sélectionner les colonnes pour que ça s'applique sur toutes les lignes... Mais tu peux restreindre à une plage sélectionnée, de B3 à G10 si tu veux. Selon la ligne de la 1ère cellule de ta sélection la formule change. Là ça serait =$A3<>"?"
Salut Eriiic & Caro,
Pour commencer merci Eriiic de me remémorer cette possibilité qui est surement la plus approprié et la moins contraignante pour les besoins de Caro, la feuille n’a pas besoin d’être protégé et il suffit de changer le «?» dans la colonne A ou celle prédéfinie, pour de nouveau accéder aux cellules prédéfinies dans le code de validation.
Dans le cas d’un code VBA la manip est plus lourde, tout dépend des accès que l'on souhaite contrôler.
A+
Pour commencer merci Eriiic de me remémorer cette possibilité qui est surement la plus approprié et la moins contraignante pour les besoins de Caro, la feuille n’a pas besoin d’être protégé et il suffit de changer le «?» dans la colonne A ou celle prédéfinie, pour de nouveau accéder aux cellules prédéfinies dans le code de validation.
Dans le cas d’un code VBA la manip est plus lourde, tout dépend des accès que l'on souhaite contrôler.
A+