OVH Cloud OVH Cloud

Désactivation du déplacement de cellules

5 réponses
Avatar
Herdet
Bonsoir à tous,
Etat des lieux :
Un classeur avec 4 feuilles protégées avec mot de passe,
Dans 3 feuilles une quarantaine de cellules déverrouillées
Ces cellules de saisie ne doivent pas être déplacées

J'aurais besoin de désactiver la fonction de déplacement de cellules (drag
and drop) mais uniquement dans le classeur actif :
1) pour l'ensemble du classeur actif
2) pour certaines feuilles en utilisant :
soit Worksheet_Activate() et Worksheet_Deactivate() de certaines
feuilles
soit Private Sub Workbook_SheetActivate(ByVal Sh As Object)

Malheureusement Application.CellDragAndDrop = False s'applique à tous les
classeurs ouverts et donc ne convient pas.

Merci de votre aide
Cordialement
Robert Dezan

5 réponses

Avatar
anonymousA
bonsoir,

jamais eu besoin d'utiliser Application.draganddrop mais nonobstant, sur
le principe, tu as déjà la solution dans ta question.
Lorsque tu utilises Worksheet_Activate() et Worksheet_Deactivate(), tu
testes le nom de la feuille et tu rétablis draganddrop au besoin. Pareil
pour le changement de classeur ,ce qui te permettra de n'activer cette
fonction que pour certains classeurs ( si tu connais leurs noms bien sur
ou si tu utilises un artifice pour les conniatre).
Ou, alors tu crées un objet de type Application à mettre dans un module
de classe et qui permettra de scruter quel classeur ou quelles feuilles
de quel classeur pourra eventuellement permettre le DragandDrop et
lesquels ne le pourront pas.

A+

Bonsoir à tous,
Etat des lieux :
Un classeur avec 4 feuilles protégées avec mot de passe,
Dans 3 feuilles une quarantaine de cellules déverrouillées
Ces cellules de saisie ne doivent pas être déplacées

J'aurais besoin de désactiver la fonction de déplacement de cellules (drag
and drop) mais uniquement dans le classeur actif :
1) pour l'ensemble du classeur actif
2) pour certaines feuilles en utilisant :
soit Worksheet_Activate() et Worksheet_Deactivate() de certaines
feuilles
soit Private Sub Workbook_SheetActivate(ByVal Sh As Object)

Malheureusement Application.CellDragAndDrop = False s'applique à tous les
classeurs ouverts et donc ne convient pas.

Merci de votre aide
Cordialement
Robert Dezan






Avatar
GD
Bonsour® Bobby ;o)))
parmi les arguments de la méthode Protect tu devrais peut-etre pouvoir
trouver ton bonheur !!!
Méthode Protect telle qu'elle s'applique à l'objet Worksheet.
Cette méthode protège une feuille de calcul de sorte qu'elle ne puisse être
modifiée.

expression.Protect(Password, DrawingObjects, Contents, Scenarios,
UserInterfaceOnly, AllowFormattingCells, AllowFormattingColumns,
AllowFormattingRows, AllowInsertingColumns, AllowInsertingRows,
AllowInsertingHyperlinks, AllowDeletingColumns, AllowDeletingRows,
AllowSorting, AllowFiltering, AllowUsingPivotTables)



Herdet wrote:
Bonsoir à tous,
Etat des lieux :
Un classeur avec 4 feuilles protégées avec mot de passe,
Dans 3 feuilles une quarantaine de cellules déverrouillées
Ces cellules de saisie ne doivent pas être déplacées

J'aurais besoin de désactiver la fonction de déplacement de cellules
(drag and drop) mais uniquement dans le classeur actif :
1) pour l'ensemble du classeur actif
2) pour certaines feuilles en utilisant :
soit Worksheet_Activate() et Worksheet_Deactivate() de certaines
feuilles
soit Private Sub Workbook_SheetActivate(ByVal Sh As Object)

Malheureusement Application.CellDragAndDrop = False s'applique à
tous les classeurs ouverts et donc ne convient pas.

Merci de votre aide
Cordialement
Robert Dezan


Avatar
anonymousA
BONSOIR?

Tout ca c'est bien beau mais à partir de Xcel 2002 pour 90% des arguments.

A+


Bonsour® Bobby ;o)))
parmi les arguments de la méthode Protect tu devrais peut-etre pouvoir
trouver ton bonheur !!!
Méthode Protect telle qu'elle s'applique à l'objet Worksheet.
Cette méthode protège une feuille de calcul de sorte qu'elle ne puisse être
modifiée.

expression.Protect(Password, DrawingObjects, Contents, Scenarios,
UserInterfaceOnly, AllowFormattingCells, AllowFormattingColumns,
AllowFormattingRows, AllowInsertingColumns, AllowInsertingRows,
AllowInsertingHyperlinks, AllowDeletingColumns, AllowDeletingRows,
AllowSorting, AllowFiltering, AllowUsingPivotTables)



Herdet wrote:

Bonsoir à tous,
Etat des lieux :
Un classeur avec 4 feuilles protégées avec mot de passe,
Dans 3 feuilles une quarantaine de cellules déverrouillées
Ces cellules de saisie ne doivent pas être déplacées

J'aurais besoin de désactiver la fonction de déplacement de cellules
(drag and drop) mais uniquement dans le classeur actif :
1) pour l'ensemble du classeur actif
2) pour certaines feuilles en utilisant :
soit Worksheet_Activate() et Worksheet_Deactivate() de certaines
feuilles
soit Private Sub Workbook_SheetActivate(ByVal Sh As Object)

Malheureusement Application.CellDragAndDrop = False s'applique à
tous les classeurs ouverts et donc ne convient pas.

Merci de votre aide
Cordialement
Robert Dezan







Avatar
Herdet
Bonjour,
Mes essais d'hier n'avaient pas fonctionné avec Open
BeforeClose, Activate et Deactivate.
Peut-être une erreur entre les True et False due à la
précipitation.
Ce matin tout fonctionne et je m'oriente donc sur cette
solution avec Open BeforeClose, Activate et Deactivate.

Merci en tout cas pour ton aide.
Robert

-----Message d'origine-----
bonsoir,

jamais eu besoin d'utiliser Application.draganddrop mais
nonobstant, sur

le principe, tu as déjà la solution dans ta question.
Lorsque tu utilises Worksheet_Activate() et
Worksheet_Deactivate(), tu

testes le nom de la feuille et tu rétablis draganddrop au
besoin. Pareil

pour le changement de classeur ,ce qui te permettra de
n'activer cette

fonction que pour certains classeurs ( si tu connais
leurs noms bien sur

ou si tu utilises un artifice pour les conniatre).
Ou, alors tu crées un objet de type Application à mettre
dans un module

de classe et qui permettra de scruter quel classeur ou
quelles feuilles

de quel classeur pourra eventuellement permettre le
DragandDrop et

lesquels ne le pourront pas.

A+

Bonsoir à tous,
Etat des lieux :
Un classeur avec 4 feuilles protégées avec mot de passe,
Dans 3 feuilles une quarantaine de cellules
déverrouillées


Ces cellules de saisie ne doivent pas être déplacées

J'aurais besoin de désactiver la fonction de
déplacement de cellules (drag


and drop) mais uniquement dans le classeur actif :
1) pour l'ensemble du classeur actif
2) pour certaines feuilles en utilisant :
soit Worksheet_Activate() et Worksheet_Deactivate
() de certaines


feuilles
soit Private Sub Workbook_SheetActivate(ByVal Sh
As Object)



Malheureusement Application.CellDragAndDrop = False
s'applique à tous les


classeurs ouverts et donc ne convient pas.

Merci de votre aide
Cordialement
Robert Dezan




.





Avatar
Herdet
Salut Gilbert,
Dans l'Excel 2000 du bureau "Protect" n'a que 3
paramètres, Password, Structure, Windows et donc ta
proposition est différée à plus tard quand nos instances
supérieures décideront de basculer sur Excel 2002, (2005,
2006,... ?)
Amitiés
Robert

-----Message d'origine-----
Bonsour® Bobby ;o)))
parmi les arguments de la méthode Protect tu devrais peut-
etre pouvoir

trouver ton bonheur !!!
Méthode Protect telle qu'elle s'applique à l'objet
Worksheet.

Cette méthode protège une feuille de calcul de sorte
qu'elle ne puisse être

modifiée.

expression.Protect(Password, DrawingObjects, Contents,
Scenarios,

UserInterfaceOnly, AllowFormattingCells,
AllowFormattingColumns,

AllowFormattingRows, AllowInsertingColumns,
AllowInsertingRows,

AllowInsertingHyperlinks, AllowDeletingColumns,
AllowDeletingRows,

AllowSorting, AllowFiltering, AllowUsingPivotTables)



Herdet wrote:
Bonsoir à tous,
Etat des lieux :
Un classeur avec 4 feuilles protégées avec mot de passe,
Dans 3 feuilles une quarantaine de cellules
déverrouillées


Ces cellules de saisie ne doivent pas être déplacées

J'aurais besoin de désactiver la fonction de
déplacement de cellules


(drag and drop) mais uniquement dans le classeur actif :
1) pour l'ensemble du classeur actif
2) pour certaines feuilles en utilisant :
soit Worksheet_Activate() et Worksheet_Deactivate
() de certaines


feuilles
soit Private Sub Workbook_SheetActivate(ByVal Sh
As Object)



Malheureusement Application.CellDragAndDrop = False
s'applique à


tous les classeurs ouverts et donc ne convient pas.

Merci de votre aide
Cordialement
Robert Dezan



.