Note: The other languages of the website are Google-translated. Back to English

Come disabilitare le funzioni taglia, copia e incolla in Excel?

Supponiamo che tu abbia una cartella di lavoro con dati importanti che devi proteggere dall'essere tagliata, copiata e incollata. Come ottenerlo? Questo articolo fornisce un metodo VBA per disabilitare le funzioni taglia, copia e incolla contemporaneamente in una cartella di lavoro di Excel.

Disabilita le funzioni taglia, copia e incolla con il codice VBA


Disabilita le funzioni taglia, copia e incolla con il codice VBA

Si prega di fare quanto segue per disabilitare le funzioni taglia, copia e incolla in una cartella di lavoro di Excel.

1. Nella cartella di lavoro è necessario disabilitare le funzioni taglia, copia e incolla, premere il tasto altro + F11 tasti contemporaneamente per aprire il file Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare doppio clic Questa cartella di lavoro sulla sinistra Progetto riquadro, quindi copia e incolla il codice VBA sottostante nel file ThisWorkbook (codice) finestra. Vedi screenshot:

Codice VBA: disabilita le funzioni taglia, copia e incolla contemporaneamente in Excel

Private Sub Workbook_Activate()
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
End Sub

Private Sub Workbook_Deactivate()
Application.CellDragAndDrop = True
Application.OnKey "^c"
Application.CutCopyMode = False
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Application.CellDragAndDrop = True
Application.OnKey "^c"
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Application.CutCopyMode = False
End Sub

3. Quindi premere il tasto altro + Q tasti per uscire da Microsoft Visual Basic, Applications Edition finestra.

Ora non puoi tagliare o copiare dati da questa cartella di lavoro, nel frattempo, i dati che hai copiato da altri fogli o cartelle di lavoro non possono essere incollati in questa cartella di lavoro.

Note:: Anche la funzione di trascinamento della selezione è disabilitata dopo aver eseguito il codice VBA sopra.


Articoli correlati:


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
fondo officetab
Commenti (50)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
faccio come sopra ma la funzione di copia taglia e incolla è disabilitata in qualsiasi file excel che apro .perché?
Questo commento è stato fatto dal moderatore sul sito
Ciao, l'ho usato per nascondere "Taglia" agli utenti e funziona benissimo a meno che tu non abbia una tabella, il "Taglio" riappare miracolosamente quando selezioni una cella nella tabella, esattamente quello che sto cercando di evitare. qualche idea? Grazie!
Questo commento è stato fatto dal moderatore sul sito
Grazie, signore, funziona. Ma in tutta la cartella di lavoro. Se ho bisogno di questo codice solo di un foglio particolare. È possibile ??
Questo commento è stato fatto dal moderatore sul sito
hai trovato una risposta?
Questo commento è stato fatto dal moderatore sul sito
Grazie mille. Funziona in tutto il libro di lavoro. Possiamo fare la codifica solo per 1 foglio. Per favore aiutatemi.
Questo commento è stato fatto dal moderatore sul sito
Come riattivare la funzione taglia, copia e incolla? Per favore, consiglio!
Questo commento è stato fatto dal moderatore sul sito
Caro Cielo
Si prega di eseguire il seguente VBA1 (posizionare il codice nel modulo ThisWorkbook) per disabilitare la funzione taglia, copia e incolla nella cartella di lavoro.

VBA1:
Sub DelCopia()
Con l'applicazione
.OnKey "^x", ""
.OnKey "^c", ""
.CommandBars("Cella").Controls(1).Enabled = False
.CommandBars("Cella").Controls(2).Enabled = False
Fine Con
End Sub

Ed esegui VBA2 per riattivare tutte queste funzioni nella tua cartella di lavoro.

VBA2:
Sub RecuperaCopia()
Con l'applicazione
.OnKey "^x"
.OnKey "^c"
.CommandBars("Cella").Controls(1).Enabled = True
.CommandBars("Cella").Controls(2).Enabled = True
Fine Con
End Sub
Questo commento è stato fatto dal moderatore sul sito
Questo non sembra aver funzionato per me: dovrei eliminare il codice VBA originale e quindi incollare quanto sopra per abilitare nuovamente la funzione Taglia, copia e incolla?
Questo commento è stato fatto dal moderatore sul sito
Buon Giorno,
Il commento sopra VBA1in è la sostituzione del codice originale.
Questo commento è stato fatto dal moderatore sul sito
Caro,

voglio disabilitare taglia, copia, incolla nel foglio excel 2007
puoi condividere il codice per questo
Questo commento è stato fatto dal moderatore sul sito
Buon Giorno,
Grazie per il tuo commento. Sto cercando di capire la soluzione per Excel 2007. Attendi pazientemente.
Questo commento è stato fatto dal moderatore sul sito
Ciao,
È possibile disabilitare solo "CUT"? ma potrei ancora usare il Copia e Incolla?
Questo commento è stato fatto dal moderatore sul sito
Ciao Carmelo,
Copia e incolla il codice seguente nella finestra del codice della cartella di lavoro nella cartella di lavoro, quindi salvalo come cartella di lavoro abilitata per Excel Macro. Quindi la funzione "Taglia" sarà disabilitata.

Opzione esplicita
Private WithEvents Cmbrs come CommandBars

Private Sub Workbook_Open ()
Imposta Cmbrs = Application.CommandBars
End Sub

Private Sub Workbook_Activate ()
Se Application.CutCopyMode = 2 Allora
Application.CutCopyMode = 0
End If
End Sub

Sub privato Cmbrs_OnUpdate()
Se io sono ActiveWorkbook allora
Se Application.CutCopyMode = 2 Allora
Application.CutCopyMode = 0
MsgBox "Operazioni di taglio disabilitate"
End If
End If
End Sub
Questo commento è stato fatto dal moderatore sul sito
Ho provato proprio come hai detto ma non succede nulla. A vogliono esattamente lo stesso, solo il
Funzione "Taglia" disabilitata. Ho bisogno di disabilitare l'opzione "taglio" dall'opzione del pulsante destro del mouse e dalla barra degli strumenti.
È possibile un cristallo??
Questo commento è stato fatto dal moderatore sul sito
Buona giornata,
Il codice funziona bene nel mio caso. Posso sapere la tua versione di Office?
Questo commento è stato fatto dal moderatore sul sito
Hi

Sono un principiante dei codici VBA e questo codice ha risolto il 99% dei miei problemi.

È possibile bloccare il foglio forato (come questa dose di codice) ma avere ancora una cella sbloccata?
(Chiarire, vorrei consentire il copia passato nelle informazioni in una sola cella nel foglio forato).

I migliori saluti
L
Questo commento è stato fatto dal moderatore sul sito
Ciao Linda,
Puoi risolvere il problema senza utilizzare il codice VBA.
Fare clic con il pulsante destro del mouse sulla cella e selezionare Formato celle dal menu contestuale, deselezionare la casella Bloccato nella scheda Protezione nella finestra di dialogo. E poi proteggi il foglio di lavoro con una password.
Questo commento è stato fatto dal moderatore sul sito
Sono stato super felice di trovare questo post, ma ho bisogno di un piccolo aiuto per limitarlo a un singolo foglio di lavoro in una cartella di lavoro con più fogli di lavoro. E abbiamo bisogno di sapere come eseguirlo senza l'intervento dell'utente... abbiamo bisogno di questo al più presto su una cartella di lavoro per aiutare a prevenire errori.
Questo commento è stato fatto dal moderatore sul sito
Buona giornata,
Il seguente codice VBA può aiutarti a risolvere il problema. E non dimenticare di sostituire "Foglio2" nel codice con il nome del tuo foglio.

mJWSName pubblico come stringa

Private Sub Workbook_Open ()
mJWSName = "Foglio2"
End Sub

Private Sub Workbook_Activate ()
Se ActiveSheet.Name = mJWSName Allora
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = Falso
End If
End Sub

Cartella di lavoro secondaria privata_Deactivate ()
Application.OnKey "^c", ""
Application.CellDragAndDrop = Vero
Application.CutCopyMode = False
End Sub


Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Se ActiveSheet.Name = mJWSName Allora
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = Falso
End If
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Application.OnKey "^c"
Application.CellDragAndDrop = Vero
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetSelectionChange (ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
Se Sh.Name = mJWSName Allora
Application.CutCopyMode = False
End If
End Sub

Private Sub Workbook_SheetActivate (ByVal Sh As Object)
On Error Resume Next
Se Sh.Name = mJWSName Allora
Application.OnKey "^c", ""
Application.CellDragAndDrop = Falso
Application.CutCopyMode = False
End If
End Sub

Private Sub Workbook_SheetDeactivate (ByVal Sh As Object)
Application.OnKey "^c"
Application.CellDragAndDrop = Vero
Application.CutCopyMode = False
End Sub
Questo commento è stato fatto dal moderatore sul sito
Un'ultima domanda: dove va a finire questo codice e come viene eseguito? Il progetto con cui deve funzionare allega un file XLA al foglio Excel che contiene gran parte del codice. Non sapevo se questo deve andare in un modulo o nel codice dietro questo foglio. Grazie...
Questo commento è stato fatto dal moderatore sul sito
Grazie per la tua direzione. Sto provando in ufficio 2013, ma non è cambiato nulla.
Questo commento è stato fatto dal moderatore sul sito
Ciao, il codice funziona bene grazie.
Tuttavia, l'opzione di sola lettura è stata abilitata. (se non vuoi modificare). Se ho impostato ..File, salva con nome, strumenti, opzioni generali, sola lettura consigliata.. allora il codice non funziona.

Grazie in anticipo.
Questo commento è stato fatto dal moderatore sul sito
Funziona davvero bene, grazie mille.
Questo commento è stato fatto dal moderatore sul sito
Grazie funziona perfettamente ....può essere applicato su una gamma solo in qualche modo?
Questo commento è stato fatto dal moderatore sul sito
Buona giornata,
Mi dispiace non poterti aiutare con quello. Benvenuto per postare qualsiasi domanda nel nostro forum: https://www.extendoffice.com/forum.html. Grazie per il tuo commento.
Questo commento è stato fatto dal moderatore sul sito
GRAZIE SIGNORE
Questo commento è stato fatto dal moderatore sul sito
Grazie, molto utile.
Questo commento è stato fatto dal moderatore sul sito
taglia copia incolla applicabile Intera cartella di lavoro. Se ho bisogno di questo codice solo di un foglio particolare. È possibile ??
per favore aiuto. abbiamo bisogno di un solo foglio per disabilitare le funzioni. un altro foglio stiamo lavorando tutte le funzioni...
Questo commento è stato fatto dal moderatore sul sito
Quel codice non funziona nel mio Excel 2016 per un singolo foglio invece dell'intera cartella di lavoro
Questo commento è stato fatto dal moderatore sul sito
Ciò consente comunque di incollare da Blocco note o Microsoft Edge. Si prega di vedere se c'è un modo per impedire l'incollaggio da qualsiasi fonte.
Questo commento è stato fatto dal moderatore sul sito
Ciao,
Se si impedisce l'incollaggio da qualsiasi fonte, è necessario impedire la funzione Blocco note, che potrebbe causare inconvenienti. Non lo consigliamo. Mi dispiace non poterti aiutare per questo.
Questo commento è stato fatto dal moderatore sul sito
Ho usato questo codice e voglio riattivarlo di nuovo? come riattivarlo?
Questo commento è stato fatto dal moderatore sul sito
usa questo codice per disabilitare il copia taglia e incolla



Private Sub Workbook_Activate ()

Application.CutCopyMode = False

Application.OnKey "^c", ""

Application.CellDragAndDrop = Falso

End Sub



Cartella di lavoro secondaria privata_Deactivate ()

Application.CellDragAndDrop = Vero

Application.OnKey "^c"

Application.CutCopyMode = False

End Sub



Private Sub Workbook_WindowActivate(ByVal Wn As Window)

Application.CutCopyMode = False

Application.OnKey "^c", ""

Application.CellDragAndDrop = Falso

End Sub



Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)

Application.CellDragAndDrop = Vero

Application.OnKey "^c"

Application.CutCopyMode = False

End Sub



Private Sub Workbook_SheetSelectionChange (ByVal Sh As Object, ByVal Target As Range)

Application.CutCopyMode = False

End Sub



Private Sub Workbook_SheetActivate (ByVal Sh As Object)

Application.OnKey "^c", ""

Application.CellDragAndDrop = Falso

Application.CutCopyMode = False

End Sub



Private Sub Workbook_SheetDeactivate (ByVal Sh As Object)

Application.CutCopyMode = False

End Sub





e desideri abilitare nuovamente queste funzioni
Questo commento è stato fatto dal moderatore sul sito
Funziona alla grande, come si potrebbe modificarlo per consentire il copia/incolla in colonne specifiche che hanno menu a discesa legati a intervalli denominati di input accettabili e solo all'input accettabile. Ad esempio un nome che è Jetson, George, 25, consentirebbe un copia/incolla di Jetson, George, 25, ma non consentirebbe Jeston, George, 26. O un trascinamento che risulterebbe in Jetson, George, 25 e poi 26 , poi 27, ecc.
Nel mio foglio di lavoro voglio disabilitare completamente taglia/copia/incolla in determinate colonne, quindi consentire solo taglia copia incolla di dati accettabili dai menu a discesa.
Thank you.
Non ci sono ancora commenti pubblicati qui
Carica Altre
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL