Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
LSteph
Bonjour,
La seule manière amha d'empêcher la copie d'un classeur serait de n'en pas donner l'accès à celui-ci voire de le supprimer définitivement.
Si ton souci est de faire entrer des données sans qu'on touche au reste diffuse un autre classeur qui ne contient pas ce que tu ne veux pas qu'on copie et va chercher ces données depuis ton précieux classeur.
Cordialement.
-- lSteph
Papymougeot75 a écrit :
Bonjour Qui va m'aider ? Protéger classeur excel contre la copie MAIS pas contre les modifications MERCI
Bonjour,
La seule manière amha d'empêcher la copie d'un classeur
serait de n'en pas donner l'accès à celui-ci voire de le supprimer
définitivement.
Si ton souci est de faire entrer des données sans qu'on touche au reste
diffuse un autre classeur qui ne contient pas ce que tu ne veux pas
qu'on copie et va chercher ces données depuis ton précieux classeur.
Cordialement.
--
lSteph
Papymougeot75 a écrit :
Bonjour
Qui va m'aider ?
Protéger classeur excel contre la copie MAIS pas contre les modifications
MERCI
La seule manière amha d'empêcher la copie d'un classeur serait de n'en pas donner l'accès à celui-ci voire de le supprimer définitivement.
Si ton souci est de faire entrer des données sans qu'on touche au reste diffuse un autre classeur qui ne contient pas ce que tu ne veux pas qu'on copie et va chercher ces données depuis ton précieux classeur.
Cordialement.
-- lSteph
Papymougeot75 a écrit :
Bonjour Qui va m'aider ? Protéger classeur excel contre la copie MAIS pas contre les modifications MERCI
FS
Bonjour,
Essaye ce genre de code (dans un module ordinaire du classeur à protéger) :
'======================== Public Const CheminValide As String = "D:testCopieInterdite.xls" '(à adapter évidemment !)
Sub Suicide() 'Chip Pearson & Bob Umlas, mpep 'à appeler dans l'événement BeforeClose du classeur à détruire 'peut aussi être appelé par une procédure avec OnTime pour une 'destruction à une date/heure précise Dim FName As String Dim Ndx As Integer With ThisWorkbook .Save For Ndx = 1 To Application.RecentFiles.Count If Application.RecentFiles(Ndx).Path = .FullName Then Application.RecentFiles(Ndx).Delete Exit For End If Next Ndx .ChangeFileAccess Mode:=xlReadOnly If Dir(.FullName) <> "" Then Kill .FullName .Close SaveChanges:úlse End With End Sub '======================== Et, dans le module ThisWorkbook du classeur :
Private Sub Workbook_BeforeClose(Cancel As Boolean) If ThisWorkbook.FullName <> CheminValide Then Suicide End Sub
Bon, ça suppose que tu décides une bonne fois pour toutes du nom et de l'emplacement du classeur sur le disque dur mais si cette contrainte est acceptable pour toi je pense qu'ensuite c'est très efficace : impossible de renommer ou copier le classeur (ni d'ailleurs le déplacer) sans que la copie s'autodétruise lors de sa première fermeture.
Evidemment, ce genre de chose a la limite habituelle des macros : _il suffit de les désactiver pour passer outre_ :)
Bonjour Qui va m'aider ? Protéger classeur excel contre la copie MAIS pas contre les modifications MERCI
Bonjour,
Essaye ce genre de code (dans un module ordinaire du classeur à protéger) :
'======================== Public Const CheminValide As String = "D:testCopieInterdite.xls"
'(à adapter évidemment !)
Sub Suicide()
'Chip Pearson & Bob Umlas, mpep
'à appeler dans l'événement BeforeClose du classeur à détruire
'peut aussi être appelé par une procédure avec OnTime pour une
'destruction à une date/heure précise
Dim FName As String
Dim Ndx As Integer
With ThisWorkbook
.Save
For Ndx = 1 To Application.RecentFiles.Count
If Application.RecentFiles(Ndx).Path = .FullName Then
Application.RecentFiles(Ndx).Delete
Exit For
End If
Next Ndx
.ChangeFileAccess Mode:=xlReadOnly
If Dir(.FullName) <> "" Then Kill .FullName
.Close SaveChanges:úlse
End With
End Sub
'========================
Et, dans le module ThisWorkbook du classeur :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If ThisWorkbook.FullName <> CheminValide Then Suicide
End Sub
Bon, ça suppose que tu décides une bonne fois pour toutes du nom et de
l'emplacement du classeur sur le disque dur mais si cette contrainte est
acceptable pour toi je pense qu'ensuite c'est très efficace : impossible
de renommer ou copier le classeur (ni d'ailleurs le déplacer) sans que
la copie s'autodétruise lors de sa première fermeture.
Evidemment, ce genre de chose a la limite habituelle des macros : _il
suffit de les désactiver pour passer outre_ :)
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/
Papymougeot75 a écrit :
Bonjour
Qui va m'aider ?
Protéger classeur excel contre la copie MAIS pas contre les modifications
MERCI
Essaye ce genre de code (dans un module ordinaire du classeur à protéger) :
'======================== Public Const CheminValide As String = "D:testCopieInterdite.xls" '(à adapter évidemment !)
Sub Suicide() 'Chip Pearson & Bob Umlas, mpep 'à appeler dans l'événement BeforeClose du classeur à détruire 'peut aussi être appelé par une procédure avec OnTime pour une 'destruction à une date/heure précise Dim FName As String Dim Ndx As Integer With ThisWorkbook .Save For Ndx = 1 To Application.RecentFiles.Count If Application.RecentFiles(Ndx).Path = .FullName Then Application.RecentFiles(Ndx).Delete Exit For End If Next Ndx .ChangeFileAccess Mode:=xlReadOnly If Dir(.FullName) <> "" Then Kill .FullName .Close SaveChanges:úlse End With End Sub '======================== Et, dans le module ThisWorkbook du classeur :
Private Sub Workbook_BeforeClose(Cancel As Boolean) If ThisWorkbook.FullName <> CheminValide Then Suicide End Sub
Bon, ça suppose que tu décides une bonne fois pour toutes du nom et de l'emplacement du classeur sur le disque dur mais si cette contrainte est acceptable pour toi je pense qu'ensuite c'est très efficace : impossible de renommer ou copier le classeur (ni d'ailleurs le déplacer) sans que la copie s'autodétruise lors de sa première fermeture.
Evidemment, ce genre de chose a la limite habituelle des macros : _il suffit de les désactiver pour passer outre_ :)