Impedire di incollare dati in una cella

Anonimo
2019-06-11T15:40:37+00:00

Ciao a tutti

non ho trovato una soluzione per quanti tentativi abbia fatto.

Lo scopo è quello di obbligare un utente ad inserire manualmente un dato in una determinata cella, impedendogli di "incollarlo" da un precedente "copia", anche se  il copia è stato fatto, per esempio, nel block-note, l'utente non deve essere in grado di incollarlo.

grazie per l'attenzione

cordiali saluti

domenico

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

12 risposte

Ordina per: Più utili
  1. Anonimo
    2019-06-12T15:48:16+00:00

    Non è mia ma cercando in internet e da verificare le dichiarazioni in caso di office 64-bit prova questo codice:

    Private Declare Function apiOpenClipboard Lib "User32" _

    Alias "OpenClipboard" _

    (ByVal hWnd As Long) _

    As Long

    Private Declare Function apiEmptyClipboard Lib "User32" _

    Alias "EmptyClipboard" _

    () As Long

    Private Declare Function apiCloseClipboard Lib "User32" _

    Alias "CloseClipboard" _

    () As Long

    Function EmptyClipboard()

    If apiOpenClipboard(0&) <> 0 Then

       Call apiEmptyClipboard

       Call apiCloseClipboard

    End If

    End Function

    La function apiOpenClipboard andrebbe richiamata quando si seleziona la cella in cui non si vuole venga effettuata la copia.

    Il sito di origine è:

    https://microsoft.public.access.modulesdaovba.narkive.com/QO5fwMgb/how-do-i-clear-the-copy-clipboard-using-vba

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2019-06-12T15:17:51+00:00

    ok. verifico e se trovo altro ti aggiorno.

    Inoltre questa assistenza rimane aperta e visibile anche ad altri utenti della community e quindi se hanno qualcosa da suggerirti lo troverai scritto qui.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2019-06-12T07:49:01+00:00

    Buongiorno Arianna

    e grazie

    SI, avevo visto quelle routines, ma mi sembrano "troppo" per quello che a me serve, ovvero non permettere di incollare dati in una cella.

    Tra l'altro a me interessa che non si possa copiare da procedure esterne, per esempio da NotePad o da Web, e purtroppo mi sono accorto che  Application.CutCopyMode = False  va bene per tutto, ma non funziona in caso di copia da prodotti esterni tipo dal web o dal notePad.

    Quello che servirebbe è una specie di evento "WindowActivate" che intercetti il fatto che si è riattivato excel provenendo da un prodotto esterno qualsiasi, sia esso il web che il notePad o altro..

    Qualche suggerimento??

    cari saluti

    domenico

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2019-06-11T19:40:29+00:00

    Buongiorno

    Mi chiamo Arianna, consulente indipendente e sono qui ad aiutarti per risolvere il problema.

    hai già provato ad applicare quanto riportato al seguente link?:

    https://www.extendoffice.com/it/documents/excel...

    Cordialmente,

    Arianna

    NOTA: Ho indicato dei siti web non-Microsoft. Ciononostante, sembra che le pagine forniscano informazioni accurate e sicure. Poni attenzione nelle pagine ad eventuali pubblicità classificate come PUP (Potentially Unwanted Products). Approfondisci accuratamente la tua conoscenza di ogni prodotto pubblicizzato sul sito web prima di scaricarlo ed installarlo.

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2019-06-11T15:58:19+00:00

    Ciao

    avrei risolto con:

    If Not Intersect(Target, Range("A1,A3,A5")) Is Nothing Then

    Application.CutCopyMode = False

    End If

    inserito nell'evento selectionChange...

    ci potrebbero essere "scappatoie" non pensate?

    saluti

    domenico

    La risposta è stata utile?

    0 commenti Nessun commento