Condividi:        

Impedire Copia Incolla

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Impedire Copia Incolla

Postdi alby60 » 05/12/11 20:10

Ciao a tutti, ecco il mio quesito ho un file con varie celle nelle quali ho inserito la convalida con elenco contenente “Codice” in una colonna e “Progressivo” in un’altra. Su queste due colonne c’è anche la formattazione condizionale ed il foglio è protetto per impedire le cancellazioni accidentali delle formule che sono nelle altre colonne; sono sprotette solo queste due colonne. Il file è su un server e viene aggiornato da più utenti.
Vorrei impedire in queste due colonne (o in tutto il file) il copia incolla perché in questo modo si perde la formattazione condizionale.
Se avete altri suggerimenti a me va bene lo stesso. La cosa che mi serve è non perdere il formato di queste due colonne .
alby60
Utente Junior
 
Post: 76
Iscritto il: 18/11/10 01:04

Sponsor
 

Re: Impedire Copia Incolla

Postdi Anthony47 » 05/12/11 23:23

Il mio suggerimento e' che accetti il rischio e ne eviti l' effetto con una macro di Worksheet_Change che ripristina sulla cella modificata la formattazione che ti interessa mantenere.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19215
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Impedire Copia Incolla

Postdi alby60 » 07/12/11 00:17

Ciao, grazie per la tua risposta. In altro sito ho avuto questa soluzione
Codice: Seleziona tutto
Private Sub Workbook_Open()
With Application
.CellDragAndDrop = False
.ExtendList = False
End With
Application.CommandBars("Cell").Enabled = False
Application.OnKey "^x", ""
Application.OnKey "^c", ""
Application.OnKey "^v", ""
Dim Ctrl As Office.CommandBarControl
For Each Ctrl In
Application.CommandBars.FindControls(ID:=19)
Ctrl.Enabled = False
Next Ctrl
For Each Ctrl In
Application.CommandBars.FindControls(ID:=21)
Ctrl.Enabled = False
Next Ctrl
For Each Ctrl In
Application.CommandBars.FindControls(ID:=22)
Ctrl.Enabled = False
Next Ctrl
End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)
With Application
.CellDragAndDrop = True
.ExtendList = True
End With
Application.CommandBars("Cell").Enabled = True
Application.OnKey "^x"
Application.OnKey "^c"
Application.OnKey "^v"
Dim Ctrl As Office.CommandBarControl
For Each Ctrl In
Application.CommandBars.FindControls(ID:=19)
Ctrl.Enabled = True
Next Ctrl
For Each Ctrl In
Application.CommandBars.FindControls(ID:=21)
Ctrl.Enabled = True
Next Ctrl
For Each Ctrl In
Application.CommandBars.FindControls(ID:=22)
Ctrl.Enabled = True
Next Ctrl
End Sub


Fa proprio al caso mio.
alby60
Utente Junior
 
Post: 76
Iscritto il: 18/11/10 01:04

Re: Impedire Copia Incolla

Postdi Anthony47 » 07/12/11 01:11

Grazie per ave condiviso quella soluzione.
Ovviamente quelle modifiche saranno valide su tutti i file che l' utente ha aperto sul suo Pc, potrebbe sorgere qualche malumore... Come possibile bypass a questo effetto collaterale, inserire il codice della BeforeClose anche in una Workbook_Deactivate, e quello del Workbook_Open anche in una Workbook_Activate.
Inoltre non viene disabilitata l' icona "pennello" che consente di copiare la formattazione; nel caso ti interessi completare, il suo ID e' 108

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19215
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Impedire Copia Incolla

Postdi alby60 » 08/12/11 17:53

Ciao Anthony, grazie delle precisazioni. Le inserirò nel mio lavoro. Agli utilizzatori del mio file sono state date delle indicazioni molto dettagliate su come lavorare e cosa fare e non fare però la prudenza non è mai troppa. Grazie di nuovo
alby60
Utente Junior
 
Post: 76
Iscritto il: 18/11/10 01:04


Torna a Applicazioni Office Windows


Topic correlati a "Impedire Copia Incolla":


Chi c’è in linea

Visitano il forum: Nessuno e 41 ospiti