VBA Application.CutCopyMode = False
Se hai registrato macro durante il copia e incolla, probabilmente hai visto la seguente riga di codice:
1 | Application.CutCopyMode = False |
Questa riga di codice "cancella" gli appunti*. Se hai copiato una cella di Excel, l'esecuzione di questa riga di codice rimuoverà l'animazione attorno alla cella copiata:
CutCopyMode è una proprietà a livello di applicazione che indica se un programma di Microsoft Office (es. Excel) è in modalità Taglia o Copia. Mentre è in modalità copia (o taglia), Excel ha qualcosa memorizzato negli appunti che può essere incollato.
Non sono a conoscenza di un momento in cui avresti mai bisogno di impostare Application.CutCopyMode su True.
Evitare CutCopyMode = False
In genere è possibile evitare di dover impostare Application CutCopyMode = False utilizzando le best practice VBA Copy+Paste. Ad esempio, la seguente riga di codice copia e incolla una cella in un'unica riga, eliminando la necessità di impostare CutCopyMode su False:
123 | Sub CopyPaste_OneLine()Intervallo("a1"). Copia Intervallo("b1")Fine sottotitolo |
Ottieni stato Application.CutCopyMode
Occasionalmente, potresti voler ottenere lo stato di Application.CutCopyMode. Potenzialmente per prevenire errori durante il tentativo di incollare quando non c'è nulla negli appunti. Per ottenere lo stato utilizzare il seguente codice:
123456789101112 | Sub Get_Application_CutCopyMode_Status()Seleziona Case Application.CutCopyModeIl caso è = xlCopiaMsgBox "Modalità copia"Case Is = xlCutMsgBox "Modalità taglio"Il caso è = falsoMsgBox "Non in modalità Taglia o Copia"Fine selezioneFine sottotitolo |
*Application.CutCopyMode cancellerà solo gli appunti dell'app Microsoft Office (es. Excel). Non cancellerà gli appunti di Windows. Fare clic sul collegamento per ulteriori informazioni su come cancellare gli appunti di Windows utilizzando VBA.