Protection cellule

Le
Polio2004
J'ai besoin de votre aide pour résoudre mon problème.
1. comment puis je protéger une feuille afin que l'opérateur ne puisse pas
modifier les cellules (je sais faire), par contre je veux que mon VBA vienne
y stocker les résultats de mes calculs.
2. comment puis je savoir à l'entrée d'une procédure, la cellule qui est
actuellement sélectionnée sur la feuille.
Merci de votre aide
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JB
Le #4226331
1-

Sub auto_open()
Sheets(1).Protect Password:="moi", userinterfaceonly:=True
[A1] = "coucou"
End Sub

2-
Sub Essai()
MsgBox ActiveCell.Value
MsgBox ActiveCell.Address
End Sub

JB

On 6 mar, 09:30, "Polio2004"
J'ai besoin de votre aide pour résoudre mon problème.
1. comment puis je protéger une feuille afin que l'opérateur ne puiss e pas
modifier les cellules (je sais faire), par contre je veux que mon VBA vie nne
y stocker les résultats de mes calculs.
2. comment puis je savoir à l'entrée d'une procédure, la cellule qu i est
actuellement sélectionnée sur la feuille.
Merci de votre aide


LSteph
Le #4226281
Bonjour,
Réponse aux 1 et 2 mais surtout
Voir en 3 indication importante.

1- alt+F11 (ouvrir VBE)
dans l'explorateur de projet doublecliquer sur le ThisWorkbook de ton
classeur

a-hypothèse une seule feuille

'''''***dans le Thisworkbook du classeur******
Private sub Workbook_Open()
Feuil1.protect password:="mdp", userinterfaceonly:=true
end sub
'''''***

b-hypothèse toutes les feuilles

'''''***dans le Thisworkbook du classeur*****
Private sub Workbook_Open()
Dim sh as Worksheet
For each sh in thisworkbook.sheets
sh.protect password:="mdp", userinterfaceonly:=true
next
end sub
'''''***



2- Deux exemples

'''''***dans un module standard***
Sub zaza()
Dim CellDepart As Range
Set CellDepart = ActiveCell
'...les instructions
[e2:h4].Select
MsgBox "Coucou je suis là"
MsgBox "la cellule de départ était: " & CellDepart.Address
CellDepart.Select
MsgBox "on est revenu"
End Sub
'''''******
Sub azaz()
Dim addrCellDep As String
addrCellDep = ActiveCell.Address
'...les instructions
[e3:g7].Select
MsgBox "Coucou je suis ici"
MsgBox "la cellule de départ était: " & addrCellDep
Range(addrCellDep).Select
MsgBox "on est revenu"
End Sub
'''''****************************

3-Pour agir par macro on a pas besoin ou rarement de sélectionner

'''''***dans un module standard***
Sub zicolore()
msgbox "on ne bouge pas de cette cellule: "& activecell.address
[e3:g7].cells.interior.colorindexA
msgbox "on a pas bougé"
end sub

'Cdlt.

'lSteph

J'ai besoin de votre aide pour résoudre mon problème.
1. comment puis je protéger une feuille afin que l'opérateur ne puisse pas
modifier les cellules (je sais faire), par contre je veux que mon VBA vienne
y stocker les résultats de mes calculs.
2. comment puis je savoir à l'entrée d'une procédure, la cellule qui est
actuellement sélectionnée sur la feuille.
Merci de votre aide




Polio2004
Le #4225841
Merci beaucoup à tous, j'ai pu mettre en application vos suggestions.

"LSteph"
Bonjour,
Réponse aux 1 et 2 mais surtout
Voir en 3 indication importante.

1- alt+F11 (ouvrir VBE)
dans l'explorateur de projet doublecliquer sur le ThisWorkbook de ton
classeur

a-hypothèse une seule feuille

'''''***dans le Thisworkbook du classeur******
Private sub Workbook_Open()
Feuil1.protect password:="mdp", userinterfaceonly:=true
end sub
'''''***

b-hypothèse toutes les feuilles

'''''***dans le Thisworkbook du classeur*****
Private sub Workbook_Open()
Dim sh as Worksheet
For each sh in thisworkbook.sheets
sh.protect password:="mdp", userinterfaceonly:=true
next
end sub
'''''***



2- Deux exemples

'''''***dans un module standard***
Sub zaza()
Dim CellDepart As Range
Set CellDepart = ActiveCell
'...les instructions
[e2:h4].Select
MsgBox "Coucou je suis là"
MsgBox "la cellule de départ était: " & CellDepart.Address
CellDepart.Select
MsgBox "on est revenu"
End Sub
'''''******
Sub azaz()
Dim addrCellDep As String
addrCellDep = ActiveCell.Address
'...les instructions
[e3:g7].Select
MsgBox "Coucou je suis ici"
MsgBox "la cellule de départ était: " & addrCellDep
Range(addrCellDep).Select
MsgBox "on est revenu"
End Sub
'''''****************************

3-Pour agir par macro on a pas besoin ou rarement de sélectionner

'''''***dans un module standard***
Sub zicolore()
msgbox "on ne bouge pas de cette cellule: "& activecell.address
[e3:g7].cells.interior.colorindexA
msgbox "on a pas bougé"
end sub

'Cdlt.

'lSteph

J'ai besoin de votre aide pour résoudre mon problème.
1. comment puis je protéger une feuille afin que l'opérateur ne puisse
pas modifier les cellules (je sais faire), par contre je veux que mon VBA
vienne y stocker les résultats de mes calculs.
2. comment puis je savoir à l'entrée d'une procédure, la cellule qui est
actuellement sélectionnée sur la feuille.
Merci de votre aide




Publicité
Poster une réponse
Anonyme