Sécurité d'une feuille masqué

Le
Flag
Bonjour,

J'ai un document avec plusieurs onglets dont un contient des données
confidentielles. Les données confidentielles sont utilisées dans d'autres
onglets pour faire des calculs.

Je dois distribuer ce document XL à plusieurs personnes mais l'onglet
contenant les données confidentielles doit être masqué pour ne pas être lu
par les autres.

J'ai utilisé "Fomat" - "Feuille" - "masquer" mais rien empêchera les
personnes d'afficher cette feuille.

Est-ce qu'il existe une autre solution?

Merci pour votre aide!
--
Flag
Excel 2003
Windows XP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #4744831
Bonsoir.
Outils / Protection / Protéger le classeur.
Cordialement.
Daniel
"Flag"
Bonjour,

J'ai un document avec plusieurs onglets dont un contient des données
confidentielles. Les données confidentielles sont utilisées dans d'autres
onglets pour faire des calculs.

Je dois distribuer ce document XL à plusieurs personnes mais l'onglet
contenant les données confidentielles doit être masqué pour ne pas être lu
par les autres.

J'ai utilisé "Fomat" - "Feuille" - "masquer" mais rien empêchera les
personnes d'afficher cette feuille.

Est-ce qu'il existe une autre solution?

Merci pour votre aide!
--
Flag
Excel 2003
Windows XP



Youky
Le #4744821
Salut,
Va en Menu>Affichage> barre d'outils> Visual basic
Place toi sur ta feuille et va en Visual Basic Editor
si la fenetre des propriétés à droite n'apparait pas aller en
menu>affichage>fenetre propriété
...dans cette fenetre aller à Visible et choisir 2 VeryHidden
la feuille est masquée immédiatement
pour encore un peu plus de sécurité mettre un mot de passe pour rentrer dans
l'éditor VBA
Pour revoir la feuille retourner dans l'éditor cliquer sur la bonne page en
fenetre des projets à gauche et en
fenetre des propriétés remettre Visible=1 xlsheetvisible

Youky

"Flag"
Bonjour,

J'ai un document avec plusieurs onglets dont un contient des données
confidentielles. Les données confidentielles sont utilisées dans d'autres
onglets pour faire des calculs.

Je dois distribuer ce document XL à plusieurs personnes mais l'onglet
contenant les données confidentielles doit être masqué pour ne pas être lu
par les autres.

J'ai utilisé "Fomat" - "Feuille" - "masquer" mais rien empêchera les
personnes d'afficher cette feuille.

Est-ce qu'il existe une autre solution?

Merci pour votre aide!
--
Flag
Excel 2003
Windows XP



Daniel.C
Le #4744781
Bonsoir Youki,
Je dois somnoler, ou je n'ai pas compris tes explications :
Qu'est-ce qui empêche d'exécuter la ligne :
ActiveWorkbook.Sheets("Feuil1").Visible = True
depuis n'importe quel classeur ?
Cordialement.
Daniel
"Youky" ODIuh5v%
Salut,
Va en Menu>Affichage> barre d'outils> Visual basic
Place toi sur ta feuille et va en Visual Basic Editor
si la fenetre des propriétés à droite n'apparait pas aller en
menu>affichage>fenetre propriété
...dans cette fenetre aller à Visible et choisir 2 VeryHidden
la feuille est masquée immédiatement
pour encore un peu plus de sécurité mettre un mot de passe pour rentrer
dans l'éditor VBA
Pour revoir la feuille retourner dans l'éditor cliquer sur la bonne page
en fenetre des projets à gauche et en
fenetre des propriétés remettre Visible=1 xlsheetvisible

Youky

"Flag"
Bonjour,

J'ai un document avec plusieurs onglets dont un contient des données
confidentielles. Les données confidentielles sont utilisées dans d'autres
onglets pour faire des calculs.

Je dois distribuer ce document XL à plusieurs personnes mais l'onglet
contenant les données confidentielles doit être masqué pour ne pas être
lu
par les autres.

J'ai utilisé "Fomat" - "Feuille" - "masquer" mais rien empêchera les
personnes d'afficher cette feuille.

Est-ce qu'il existe une autre solution?

Merci pour votre aide!
--
Flag
Excel 2003
Windows XP







LSteph
Le #4744681
Bonsoir Daniel,

Certes mais attention, Youky a raison aussi car
le cas échéant, elle peut ne s'appeller plus feuil1
mais du nom que l'on a mis aussi dans la Fenêtre des propriétés
et ainsi également pour le codeName qui lui aussi ne sera connu que de
celui qui déverrouille le projet
(ce qui certes n'est pas forcément bien difficile à contourner)
mais en l'occurence dans le respect des fonctionnalités "normales"
simplement depuis un autre workbook que ce soit:
ActiveWorkbook.Sheets("Feuil1").Visible = True
ou
Feuil1.visible=true
dans le premier cas Erreur d'execution 9
Indice n'appartient pas à la selection
dansle second cas Erreur 438
Propriété non gérée par cet objet

Cordialement.

lSteph

Bonsoir Youki,

ActiveWorkbook.Sheets("Feuil1").Visible = True





Daniel.C
Le #4744661
D'accord avec toi. J'ai mis "Feuil1" pour faire court.
Mettons :
For Each feuille In ActiveWorkbook.Sheets
feuille.Visible = True
Next feuille
Daniel
"LSteph" u8QfAcw%
Bonsoir Daniel,

Certes mais attention, Youky a raison aussi car
le cas échéant, elle peut ne s'appeller plus feuil1
mais du nom que l'on a mis aussi dans la Fenêtre des propriétés
et ainsi également pour le codeName qui lui aussi ne sera connu que de
celui qui déverrouille le projet
(ce qui certes n'est pas forcément bien difficile à contourner)
mais en l'occurence dans le respect des fonctionnalités "normales"
simplement depuis un autre workbook que ce soit:
ActiveWorkbook.Sheets("Feuil1").Visible = True
ou
Feuil1.visible=true
dans le premier cas Erreur d'execution 9
Indice n'appartient pas à la selection
dansle second cas Erreur 438
Propriété non gérée par cet objet

Cordialement.

lSteph

Bonsoir Youki,

ActiveWorkbook.Sheets("Feuil1").Visible = True






LSteph
Le #4744651
Re,

;-)
Là d'accord,
et vos indications sont ainsi complémentaires:
Mettre la feuille xlsheetveryhidden et protèger le projet ...
mais en plus Protéger le classeur.

@+

lSteph





D'accord avec toi. J'ai mis "Feuil1" pour faire court.
Mettons :
For Each feuille In ActiveWorkbook.Sheets
feuille.Visible = True
Next feuille
Daniel
"LSteph" u8QfAcw%
Bonsoir Daniel,

Certes mais attention, Youky a raison aussi car
le cas échéant, elle peut ne s'appeller plus feuil1
mais du nom que l'on a mis aussi dans la Fenêtre des propriétés
et ainsi également pour le codeName qui lui aussi ne sera connu que de
celui qui déverrouille le projet
(ce qui certes n'est pas forcément bien difficile à contourner)
mais en l'occurence dans le respect des fonctionnalités "normales"
simplement depuis un autre workbook que ce soit:
ActiveWorkbook.Sheets("Feuil1").Visible = True
ou
Feuil1.visible=true
dans le premier cas Erreur d'execution 9
Indice n'appartient pas à la selection
dansle second cas Erreur 438
Propriété non gérée par cet objet

Cordialement.

lSteph

Bonsoir Youki,
ActiveWorkbook.Sheets("Feuil1").Visible = True







Daniel.C
Le #4744541
Bonjour.
Ca ne suffit même pas.
Après avoir récupéré le nom des feuilles :

For Each sh In Sheets
Var = sh.Name
Zone = sh.UsedRange.Address
Next

on a le loisir d'écrire :
=[Classeur1]Feuil1!A1
(classeur1 étant le classeur protégé et la feuille Feuil1 la feuille
xlveryhidden)
et d'utiliser l'adresse de Zone pour récupérer toutes les infos disponibles.
Daniel
"LSteph" u6JXrAx%
Re,

;-)
Là d'accord,
et vos indications sont ainsi complémentaires:
Mettre la feuille xlsheetveryhidden et protèger le projet ...
mais en plus Protéger le classeur.

@+

lSteph





D'accord avec toi. J'ai mis "Feuil1" pour faire court.
Mettons :
For Each feuille In ActiveWorkbook.Sheets
feuille.Visible = True
Next feuille
Daniel
"LSteph" u8QfAcw%
Bonsoir Daniel,

Certes mais attention, Youky a raison aussi car
le cas échéant, elle peut ne s'appeller plus feuil1
mais du nom que l'on a mis aussi dans la Fenêtre des propriétés
et ainsi également pour le codeName qui lui aussi ne sera connu que de
celui qui déverrouille le projet
(ce qui certes n'est pas forcément bien difficile à contourner)
mais en l'occurence dans le respect des fonctionnalités "normales"
simplement depuis un autre workbook que ce soit:
ActiveWorkbook.Sheets("Feuil1").Visible = True
ou
Feuil1.visible=true
dans le premier cas Erreur d'execution 9
Indice n'appartient pas à la selection
dansle second cas Erreur 438
Propriété non gérée par cet objet

Cordialement.

lSteph

Bonsoir Youki,
ActiveWorkbook.Sheets("Feuil1").Visible = True









Daniel.C
Le #4744511
Sinon, OpenOffice permet d'ôter la protection du classeur sans demander de
mot de passe et d'afficher la feuille pourtant xlveryhidden.
C'est vraiment difficile de bien sécuriser un classeur !
Daniel
"LSteph" u6JXrAx%
Re,

;-)
Là d'accord,
et vos indications sont ainsi complémentaires:
Mettre la feuille xlsheetveryhidden et protèger le projet ...
mais en plus Protéger le classeur.

@+

lSteph





D'accord avec toi. J'ai mis "Feuil1" pour faire court.
Mettons :
For Each feuille In ActiveWorkbook.Sheets
feuille.Visible = True
Next feuille
Daniel
"LSteph" u8QfAcw%
Bonsoir Daniel,

Certes mais attention, Youky a raison aussi car
le cas échéant, elle peut ne s'appeller plus feuil1
mais du nom que l'on a mis aussi dans la Fenêtre des propriétés
et ainsi également pour le codeName qui lui aussi ne sera connu que de
celui qui déverrouille le projet
(ce qui certes n'est pas forcément bien difficile à contourner)
mais en l'occurence dans le respect des fonctionnalités "normales"
simplement depuis un autre workbook que ce soit:
ActiveWorkbook.Sheets("Feuil1").Visible = True
ou
Feuil1.visible=true
dans le premier cas Erreur d'execution 9
Indice n'appartient pas à la selection
dansle second cas Erreur 438
Propriété non gérée par cet objet

Cordialement.

lSteph

Bonsoir Youki,
ActiveWorkbook.Sheets("Feuil1").Visible = True









lSteph
Le #4744481
Bonjour Daniel,
;o))

Ce n'est pas pour des prunes que j'ai écrit ceci:

(ce qui certes n'est pas forcément bien difficile à contourner)

--
LSteph

"La protection est efficace pour celui qui y croit!"

On 20 sep, 10:08, "Daniel.C"
Bonjour.
Ca ne suffit même pas.
Après avoir récupéré le nom des feuilles :

For Each sh In Sheets
Var = sh.Name
Zone = sh.UsedRange.Address
Next

on a le loisir d'écrire :
=[Classeur1]Feuil1!A1
(classeur1 étant le classeur protégé et la feuille Feuil1 la feuille
xlveryhidden)
et d'utiliser l'adresse de Zone pour récupérer toutes les infos dispo nibles.
Daniel
"LSteph" u6JXrAx%

Re,

;-)
Là d'accord,
et vos indications sont ainsi complémentaires:
Mettre la feuille xlsheetveryhidden et protèger le projet ...
mais en plus Protéger le classeur.

@+

lSteph

D'accord avec toi. J'ai mis "Feuil1" pour faire court.
Mettons :
For Each feuille In ActiveWorkbook.Sheets
feuille.Visible = True
Next feuille
Daniel
"LSteph" u8QfAcw%
Bonsoir Daniel,

Certes mais attention, Youky a raison aussi car
le cas échéant, elle peut ne s'appeller plus feuil1
mais du nom que l'on a mis aussi dans la Fenêtre des propriétés
et ainsi également pour le codeName qui lui aussi ne sera connu qu e de
celui qui déverrouille le projet
(ce qui certes n'est pas forcément bien difficile à contourner)
mais en l'occurence dans le respect des fonctionnalités "normales"
simplement depuis un autre workbook que ce soit:
ActiveWorkbook.Sheets("Feuil1").Visible = True
ou
Feuil1.visible=true
dans le premier cas Erreur d'execution 9
Indice n'appartient pas à la selection
dansle second cas Erreur 438
Propriété non gérée par cet objet

Cordialement.

lSteph

Bonsoir Youki,
ActiveWorkbook.Sheets("Feuil1").Visible = True






"





Youky
Le #4744451
Bonjour à vous,
Pas facile en effet de bien sécuriser, mieux ne rien mettre de trop
confidentiel.
ou encore ....écrire les données en ligne 65536 et mettre la police en blanc
en font wingdings et Pfff.....
Youky
"lSteph"
Bonjour Daniel,
;o))

Ce n'est pas pour des prunes que j'ai écrit ceci:

(ce qui certes n'est pas forcément bien difficile à contourner)

--
LSteph

"La protection est efficace pour celui qui y croit!"

On 20 sep, 10:08, "Daniel.C"
Bonjour.
Ca ne suffit même pas.
Après avoir récupéré le nom des feuilles :

For Each sh In Sheets
Var = sh.Name
Zone = sh.UsedRange.Address
Next

on a le loisir d'écrire :
=[Classeur1]Feuil1!A1
(classeur1 étant le classeur protégé et la feuille Feuil1 la feuille
xlveryhidden)
et d'utiliser l'adresse de Zone pour récupérer toutes les infos
disponibles.
Daniel
"LSteph" u6JXrAx%

Re,

;-)
Là d'accord,
et vos indications sont ainsi complémentaires:
Mettre la feuille xlsheetveryhidden et protèger le projet ...
mais en plus Protéger le classeur.

@+

lSteph

D'accord avec toi. J'ai mis "Feuil1" pour faire court.
Mettons :
For Each feuille In ActiveWorkbook.Sheets
feuille.Visible = True
Next feuille
Daniel
"LSteph" u8QfAcw%
Bonsoir Daniel,

Certes mais attention, Youky a raison aussi car
le cas échéant, elle peut ne s'appeller plus feuil1
mais du nom que l'on a mis aussi dans la Fenêtre des propriétés
et ainsi également pour le codeName qui lui aussi ne sera connu que
de
celui qui déverrouille le projet
(ce qui certes n'est pas forcément bien difficile à contourner)
mais en l'occurence dans le respect des fonctionnalités "normales"
simplement depuis un autre workbook que ce soit:
ActiveWorkbook.Sheets("Feuil1").Visible = True
ou
Feuil1.visible=true
dans le premier cas Erreur d'execution 9
Indice n'appartient pas à la selection
dansle second cas Erreur 438
Propriété non gérée par cet objet

Cordialement.

lSteph

Bonsoir Youki,
ActiveWorkbook.Sheets("Feuil1").Visible = True






"





Publicité
Poster une réponse
Anonyme