Cancellare contenuto degli Appunti

Anonimo
2017-08-10T09:34:57+00:00

Buon giorno,

è possibile cancellare il contenuto degli appunti con una macro?

Grazie dell'attenzione.

Pier Luigi

excel 2010

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

4 risposte

Ordina per: Più utili
  1. Anonimo
    2017-08-10T15:03:19+00:00

    Gentilissimo Norman buona sera,

    in effetti la domanda verteva per ".....contenuto  degli appunti di Office...."

    mi vado a leggere i thread suggeriti.

    Eventualmente rifarò un ulteriore quesito.

    Grazie dei tuoi sempre graditi suggerimenti.

    Buona serata.

    Pier Luigi

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2017-08-10T14:51:58+00:00

    Ciao Pier Luigi,

    sicuramente il codice è ineccepibile.

    ma, lanciando:

    Public Sub Tester()

        Application.CutCopyMode = False

    End Sub

    la casella degli appunti non si cancella.

    Dove sbaglio?

    Forse stiamo confondendo i dati di Excel, gli appunti di Office e gli appunti di Windows!

    Eseguendo una operazione di copia , si crea un 'marquee' (la linea di formiche in movimento intorno alle celle copiate) attorno le celle copiate

                  ![](https://learn-attachment.microsoft.com/api/attachments/15cc0204-295f-4f4c-abe1-631af9f192d1?platform=QnA)

    Per cancellare il marquee, e quindi la capacità di incollare direttamente i dati copiati, ****potresti eseguire  l'istruzione VBA:

         Application.CutCopyMode = False

                 

    Tuttavia, questo codice non cancellerebbe il contenuto  degli appunti di Office e, quindi, dopo l'escuzione del codice, si vederebbe i dati copiati ancora negli appunti di Office:

                   

    Non credo che ci sia un modo di cancellare gli appunti di Office tramite VBA - a meno che non si tratti di Excel 2000. In tal caso,  si poteva sfruttare l'oggetto CommandBars per replicare l'effetto della cancellazione manuale degli appunti di Office.

    Diversamenti, il contenuto degli appunti di Windows può essere cancellato programaticamente con il codice del secondo suggerimento indicato nella mia risposta originaria. In tal caso, anche gli appunti di Offic non persisterebbero e sarebbero svuotati con la chiusura di Excel.

    A questo proposito, i seguenti vecchi thread da un forum inglese potrebbero essere di interesse:

    https://www.pcreview.co.uk/threads/clear-office-clipboard-from-vba.3059786/

    https://www.pcreview.co.uk/threads/how-to-clear-clipboard-in-ms-word-using-vba.3729648/

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2017-08-10T12:54:27+00:00

    Gentilissimo Norman, grazie

    sicuramente il codice è ineccepibile.

    ma, lanciando:

    Public Sub Tester()

        Application.CutCopyMode = False

    End Sub

    la casella degli appunti non si cancella.

    Dove sbaglio?

    Grazie

    Cordiali saluti

    Pier Luigi

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2017-08-10T12:00:46+00:00

    Ciao Pier Luigi,

    è possibile cancellare il contenuto degli appunti con una macro?

    Certo!

    Per cancellare i dati di Excel dagli appunti, prova:

    '=========>>

    Option Explicit

    '--------->>

    Public Sub Tester()

        Application.CutCopyMode = False

    End Sub

    '<<=========

    Per cancellare i dati dagli appunti di Windows, prova:

    '=========>>

    Option Explicit

    Public Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long

    Public Declare Function EmptyClipboard Lib "user32" () As Long

    Public Declare Function CloseClipboard Lib "user32" () As Long

    '--------->>

    Public Sub ClearClipboard()

        OpenClipboard (0&)

        EmptyClipboard

        CloseClipboard

    End Sub

    '<<=========

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento