venerdì 22 agosto 2025

MS Excel: Simulare il lancio di un dado

In questo articolo esploreremo come creare un'animazione di un lancio di dado virtuale direttamente in Microsoft Excel, combinando formule, formattazione e una semplice macro VBA.

Il primo passo consiste nel preparare la "faccia" del nostro dado.
Selezionare una cella qualsiasi (ad esempio, A1) e incollare la seguente formula.
=SCEGLI(CASUALE.TRA(1;6);"⚀";"⚁";"⚂";"⚃";"⚄";"⚅")
Questa formula userà la funzione CASUALE.TRA per generare un numero intero casuale da 1 a 6 e la funzione SCEGLI per associare ogni numero al simbolo corrispondente.

Dado
FIG 1 - Dado

Nota: I simboli del dado (⚀, ⚁, ecc.) si trovano nel set di caratteri Segoe UI Symbol ed è possibile inserirli tramite il menu Inserisci > Simbolo.

Per rendere il dado più visibile, selezionare la cella A1 e aumenta la dimensione del carattere (ad esempio, a 100 punti). Successivamente, ridimensionare la colonna per adattarla perfettamente al simbolo.
Dimensione carattere
FIG 2 - Dimensione carattere


Creare la macro per l'animazione: Premere la combinazione ALT+F11 per aprire l'editor di VBA e incollare il seguente codice
Sub LanciaDadi()
    Dim i As Integer
    For i = 1 To 100
     Application.Calculate
     DoEvents
    Next i
End Sub

Questo codice fa sì che Excel ricalcoli la formula 100 volte in rapida successione. La riga DoEvents permette di aggiornare la visualizzazione del foglio di lavoro a ogni iterazione, creando l'effetto di un'animazione.

Microsoft Visual Basic, Application Edition
FIG 3 - Microsoft Visual Basic, Application Edition


Chiudere l'editor di VBA e torna al tuo foglio di calcolo.

Per attivare la macro con un solo clic andremo ad aggiungere un pulsante.

Se il menu Sviluppo non è visibile, abilitarlo tramite il menu File->Opzioni->Personalizzazione barra multifunzione e spuntando la casella Sviluppo.

Nel menu Sviluppo, cliccare su Inserisci e selezionare il Pulsante (Controllo modulo).

Inserisci pulsante
FIG 4 - Inserisci pulsante

Tenendo premuto il tasto sinistro del mouse, disegnare il pulsante sul foglio di calcolo nel punto desiderato. Non appena il tasto viene rilasciato, si aprirà una finestra per assegnare una macro. Selezionare la macro LanciaDadi e cliccare su OK.

Seleziona macro
FIG 5 - Seleziona macro

Ora è possibile rinominare il pulsante in "Lancia dado". Cliccando su di esso, la cella A1 inizierà a cambiare rapidamente i simboli del dado, fermandosi su un risultato casuale, simulando in modo efficace un lancio.

Lancia dado
FIG 6 - Lancia dado




giovedì 21 agosto 2025

Windows 11: Accesso controllato alle cartelle

Uno dei pericoli più gravi che affliggono i sistemi informatici moderni è rappresentato dal ransomware, una tipologia di malware che cifra o danneggia i file dell’utente per poi richiedere un riscatto economico.
Per contrastare questa minaccia, Microsoft ha introdotto in Windows 10 una funzionalità chiamata Accesso controllato alle cartelle, mantenuta e migliorata anche in Windows 11.

Questa funzione consente al sistema operativo di monitorare le applicazioni che tentano di accedere a determinate cartelle, bloccando quelle non autorizzate quando cercano di modificare, eliminare o sovrascrivere i file. L'Accesso controllato alle cartelle non impedisce la lettura o la copia dei file, ma limita le modifiche non autorizzate.

Funzionamento della protezione

Il sistema mantiene un elenco di applicazioni affidabili (Microsoft Office, browser, applicazioni di sistema, ecc.). Se un software non presente in questo elenco tenta di scrivere in una cartella protetta, l’operazione viene bloccata. L’utente riceve una notifica e può decidere se autorizzare l’applicazione in futuro.

Per impostazione predefinita, Windows 11 protegge le seguenti cartelle:
  • Documenti
  • Immagini
  • Video
  • Musica
  • Preferiti
L’utente può tuttavia aggiungere cartelle personalizzate per aumentare la protezione (es. cartelle di lavoro, archivi di progetto, cartelle cloud locali).


Attivazione dell’Accesso controllato alle cartelle

Per attivare la funzione Accesso controllato:
  • Aprire il menu Start e digitare Sicurezza di Windows (in alternativa accedere a Impostazioni->Privacy e sicurezza->Sicurezza di Windows)
  • Accedere alla sezione Protezione da virus e minacce.
  • Cliccare su Gestisci protezione da ransomware.

    Protezione da virus e minacce
    FIG 1 - Protezione da virus e minacce

  • Abilitare l’interruttore Accesso alle cartelle controllato.

    Attivazione Accesso alle cartelle controllato
    FIG 2 - Attivazione Accesso alle cartelle controllato

  • Confermare l’operazione nella finestra del Controllo account utente (UAC).

Una volta attivata, diventano disponibili tre strumenti di configurazione:
  1. Cronologia blocchi
  2. Cartelle protette
  3. Consenti app tramite accesso alle cartelle controllato

1. Cronologia blocchi
  • Mostra l’elenco dei tentativi bloccati.
  • Ogni evento è accompagnato da data, percorso coinvolto e livello di gravità.
  • Se si ritiene che l’app sia sicura, è possibile autorizzarla direttamente dalla lista.
Cronologia protezione
FIG 3 - Cronologia protezione


2. Cartelle protette
  • Permette di aggiungere o rimuovere cartelle dall’elenco di quelle protette.
  • Le cartelle predefinite di Windows non possono essere rimosse.
Cartelle protette
FIG 4 - Cartelle protette


3. Consenti app tramite accesso alle cartelle controllato
  • Funzione utile per gestire le eccezioni.
  • È possibile autorizzare un’applicazione che altrimenti verrebbe bloccata.
  • Si può scegliere tra: 
    - App bloccate di recente (autorizzazione rapida).
     
    - Sfoglia tutte le app (per selezionare manualmente un file eseguibile).
Consenti app tramite accesso alle cartelle controllato
FIG 5 - Consenti app tramite accesso alle cartelle controllato


Microsoft non ha pubblicato criteri dettagliati su come viene stabilita l’affidabilità di un’app. In alcuni casi anche programmi sicuri, come Blocco note o Paint, possono essere bloccati e richiedere un’autorizzazione manuale.



Vantaggi e limiti

Vantaggi:
  • Protezione efficace contro ransomware e malware che tentano di modificare i file.
  • Possibilità di personalizzazione delle cartelle da proteggere.
  • Maggior controllo sull’esecuzione delle applicazioni.

Limiti:
  • Non impedisce la copia o l’esfiltrazione dei dati.
  • Può generare falsi positivi, bloccando anche software legittimi.
  • Non sostituisce un antivirus completo: va utilizzato insieme alla protezione in tempo reale di Windows Defender o ad altre soluzioni di sicurezza.


Conclusione

L’Accesso controllato alle cartelle di Windows 11 è una difesa aggiuntiva contro il ransomware, utile soprattutto in contesti in cui i dati hanno un alto valore (ricerca, lavoro, studio).
Non è una soluzione definitiva, ma integrata con altre misure di sicurezza (backup, antivirus aggiornato, buone pratiche di navigazione) contribuisce a costruire una strategia di protezione completa.

Una volta attivato l’Accesso controllato alle cartelle sul proprio PC è consigliabile adottare alcune buone pratiche:
  • Controllare regolarmente la cronologia dei blocchi per individuare eventuali attività sospette.
  • Configurare cartelle aggiuntive contenenti progetti, codice sorgente o dati importanti.
  • Autorizzare manualmente solo applicazioni di cui si conosce l’origine.
  • Mantenere aggiornato Windows Security per garantire l’efficacia della protezione.



mercoledì 20 agosto 2025

WhatsApp: Modificare un messaggio dopo l'invio

L'applicazione di messaggistica istantanea WhatsApp offre agli utenti la possibilità di modificare un messaggio di testo già inviato. Tale funzione, sebbene apparentemente semplice, è regolata da specifici vincoli operativi che ne limitano l'utilizzo. 

Modificare un messaggio dopo l'invio

La correzione di un messaggio inviato richiede l'esecuzione di una sequenza di azioni precise, che possono essere schematizzate nei seguenti passaggi:
  • Identificazione e Selezione. L'utente deve dapprima identificare il messaggio oggetto della modifica all'interno della cronologia della chat. Successivamente, è necessario selezionarlo esercitando una pressione prolungata (tap-and-hold) sul messaggio stesso. Questa azione attiva il menu contestuale, che offre una serie di opzioni operative.
  • Accesso al Menu di Funzionalità. Dalla barra delle opzioni che appare nella parte superiore dello schermo, l'utente deve toccare l'icona dei tre punti verticali (o analoga, a seconda della piattaforma) per accedere a un sottomenu di funzionalità aggiuntive.
  • Invocazione della Funzione di Modifica. Nel sottomenu, l'opzione "Modifica" deve essere selezionata. Tale comando abilita la modalità di editing per il testo del messaggio.
  • Editing e Convalida. Il contenuto del messaggio viene reso modificabile in un'area di testo. Dopo aver apportato le correzioni necessarie, l'utente deve convalidare l'operazione toccando il pulsante di conferma (generalmente rappresentato da una spunta o una freccia). Questo atto finale aggiorna il messaggio, che risulterà corretto per tutti i partecipanti alla chat.

Vincoli Temporali e Funzionali

È fondamentale sottolineare che la funzionalità di modifica non è illimitata. Essa è vincolata a una finestra temporale di 15 minuti dall'invio del messaggio. Superato questo intervallo, l'opzione "Modifica" non sarà più disponibile, rendendo il messaggio immutabile. È importante notare che questa procedura è applicabile esclusivamente ai messaggi di testo e non si estende ad altri formati di contenuto, come i messaggi audio o le note vocali.

WhatsApp, Modifica messaggio inviato
FIG 1 - WhatsApp, Modifica messaggio inviato





lunedì 18 agosto 2025

Windows: Robocopy

La gestione dei dati è fondamentale, che si tratti di un semplice backup di documenti personali o della migrazione di un'intera infrastruttura aziendale, la capacità di spostare e copiare file in modo efficiente, affidabile e veloce è cruciale. Sebbene l'interfaccia grafica di Esplora file sia più che sufficiente per le attività quotidiane, Windows offre uno strumento a riga di comando che rappresenta la scelta preferita per i professionisti IT e gli utenti avanzati: Robocopy.

Robocopy, abbreviazione di "Robust File Copy", è un'utility a riga di comando integrata in tutti i sistemi operativi Windows moderni.  Il suo scopo principale è quello di copiare file e directory da una posizione all'altra, ma con una serie di funzionalità avanzate che lo distinguono da comandi più semplici come `copy` o `xcopy`. La sua "robustezza" deriva dalla capacità di riprendere le operazioni interrotte, di gestire la copia di permessi e attributi, e di operare in modalità specchio (mirroring) per sincronizzare il contenuto di due cartelle in modo bidirezionale.

I vantaggi nell'utilizzo di Robocopy sono
  • Robustezza: Se la copia viene interrotta a causa di un problema di rete o di un errore, Robocopy può riprendere da dove si era fermato, senza dover ricominciare tutto da capo. L'opzione `/Z` (restartable mode) è il cuore di questa funzionalità.
  • Velocità: Con l'opzione di copia multi-thread, Robocopy può copiare file in parallelo, migliorando notevolmente la velocità di trasferimento, specialmente su collegamenti veloci e con tanti file piccoli.
  • Controllo Granulare: Si ha un controllo granulare su cosa viene copiato, escluso o modificato. É possibile specificare se copiare sottocartelle vuote, escludere file per nome o dimensione, o mantenere attributi e permessi.
  • Automazione: Essendo un'utility a riga di comando, Robocopy si presta perfettamente all'uso in script e file batch per automatizzare le operazioni di backup e sincronizzazione, rendendole ripetibili e programmate.

Per utilizzare Robocopy si consiglia di aprire il Prompt dei comandi con privilegi amministrativi. L'uso dei privilegi amministrativi garantisce che Robocopy possa superare eventuali restrizioni di accesso ai file (a meno che non si utilizzino opzioni specifiche come `/b` per la modalità backup).

Sintassi e Parametri Fondamentali

La sintassi di base di robocopy è semplice ma potente:
robocopy <origine> <destinazione> [<file>[ ...]] [<opzioni>]
  • <origine>: Specifica il percorso della directory da cui vuoi copiare.
  • <destinazione>: Specifica il percorso della directory dove vuoi copiare i file.
  • [<file>[ ...]]: Il nome del file o dei file da copiare. I caratteri jolly (`*` e `?`) sono supportati. Se omesso, Robocopy copierà tutti i file (`*.*`).
  • [<opzioni>]: Le opzioni di comando che definiscono il comportamento di Robocopy.

Per esempio, per copiare il file `report.zip` dalla cartella `c:\reports` alla condivisione di rete `\\backup\reports` in modalità multi-thread e riavviabile, il comando sarà:
robocopy c:\reports "\\backup\reports" report.zip /mt /z


Opzioni di Copia Essenziali


Opzione Descrizione
/s
Copia le sottodirectory, ma esclude quelle vuote.
/e
Copia le sottodirectory, incluse quelle vuote. Questa è l'opzione più comune per la copia completa di una cartella.
/lev:<n>
Copia solo i primi n livelli dell'albero delle directory di origine.
/z
Copia i file in modalità riavviabile. In modalità riavviabile, in caso di interruzione di una copia di file, robocopy può riprendere la posizione in cui è stata interrotta invece di ricopiare l'intero file.
/b
Copia i file in modalità di backup. In modalità di backup robocopy esegue l'override delle impostazioni di autorizzazione per file e cartelle (ACL), che potrebbero altrimenti bloccare l'accesso.
/zb
Copia i file in modalità riavviabile. Se l'accesso ai file viene negato, passa alla modalità di backup.
/j
Copia con I/O senza buffer (scelta consigliata per file di grandi dimensioni).
/efsraw
Copia tutti i file crittografati in modalità RAW EFS.
/j
Copia con I/O senza buffer (scelta consigliata per file di grandi dimensioni).
/copy:<copyflags>
Specifica le proprietà del file da copiare. I valori validi per questa opzione sono:
D - Data
A - Attributes
T - Time stamps
X - Skip alt data streams
S - NTFS access control list (ACL)
O - Owner information
U - Auditing information

Il valore predefinito per l'opzione /COPY è DAT (dati, attributi e timestamp). Il flag X viene ignorato se si utilizza /B o /ZB.
/dcopy:<copyflags>
Specifica cosa copiare nelle directory. I valori validi per questa opzione sono:
D - Data
A - Attributes
T - Time stamps
E - Extended attribute
X - Skip alt data streams
Il valore predefinito per questa opzione è DA (dati e attributi).
/sec
Copia i file con sicurezza (equivalente a /copy:DATS).
/copyall
Copia tutte le informazioni del file (equivalente a /copy:DATSOU).
/nocopy
Non copia le informazioni sui file (utile con /purge).
/secfix
Consente di correggere la sicurezza in tutti i file, anche quelli ignorati.
Quando si utilizza l'opzione di copia /secfix, specificare il tipo di informazioni di sicurezza che si desidera copiare, utilizzando una delle seguenti opzioni di copia aggiuntive:
/copyall
/copy:o
/copy:s
/copy:u
/sec
/timfix
Consente di correggere gli orari in tutti i file, anche quelli ignorati.
/purge
Elimina i file e le directory di destinazione che non esistono più nell'origine. Utilizzando questa opzione con l'opzione /e e una directory di destinazione, è possibile evitare la sovrascrittura delle impostazioni di sicurezza della directory di destinazione.
/mir
Esegue il mirroring di una struttura di directory (equivalente a /e più /purge). Utilizzando questa opzione con l'opzione /e e una directory di destinazione, sovrascrive le impostazioni di sicurezza della directory di destinazione.
/mov
Sposta i file ed elimina i file dall'origine dopo la copia.
/move
Sposta i file e le directory ed elimina i file dall'origine dopo la copia.
/a+:[RASHCNET]
Aggiunge gli attributi specificati ai file copiati. I valori validi per questa opzione sono:
R - Read only
A - Archive
S - System
H - Hidden
C - Compressed
N - Not content indexed
E - Encrypted
T - Temporary
/a-:[RASHCNETO]
Rimuove gli attributi specificati dai file copiati. I valori validi per questa opzione sono:
R - Read only
A - Archive
S - System
H - Hidden
C - Compressed
N - Not content indexed
E - Encrypted
T - Temporary
O - Offline
/create
Crea solo un albero di directory e file di lunghezza zero.
/fat
Crea file di destinazione usando solo nomi di file FAT di lunghezza di 8,3 caratteri.
/256
Disattiva il supporto per i percorsi con più di 256 caratteri.
/mon:<n>
Monitora la fonte e si riavvia quando vengono rilevate più di n modifiche.
/mot:<m>
Monitora la fonte e si riavvia dopo m minuti se vengono rilevate modifiche.
/rh:hhmm-hhmm
Specifica i tempi di esecuzione in cui è possibile avviare nuove copie.
/pf
Controlla i tempi di esecuzione per ogni file (non per passaggio).
/ipg:<m>
Specifica il divario tra pacchetti per liberare la larghezza di banda nelle linee lente.
/sj
Copia le giunzioni (collegamenti flessibili) nel percorso di destinazione anziché le destinazioni di collegamento.
/sl
Non seguire i collegamenti simbolici e creare invece una copia del collegamento.
/mt:<m>
Crea copie multithread con n thread. n deve essere un numero intero compreso tra 1 e 128. Il valore predefinito per n è 8. Per ottenere prestazioni migliori, reindirizzare l'output utilizzando l'opzione /log.
Il parametro /mt non può essere utilizzato con i parametri /ipg e /efsraw.
/nodcopy
Non copia le informazioni della directory (viene eseguita l'operazione predefinita /dcopy:DA).
/nooffload
Copia i file senza usare il meccanismo di offload copia di Windows.
/compress
Richiede la compressione di rete durante il trasferimento di file, se applicabile.
/sparse:<y|n>
Abilita o disabilita la conservazione dello stato sparse dei file durante il processo di copia. Se non viene selezionata alcuna opzione, l'impostazione predefinita è sì (abilitato).
/noclone
Non tenta di bloccare la clonazione come ottimizzazione.


Copiare le opzioni di limitazione dei file

Queste opzioni di limitazione vengono usate per specificare la larghezza di banda di I/O massima che Robocopy consente di usare in byte al secondo.  Se non si specifica il valore in byte al secondo, è possibile utilizzare numeri interi se si specificano k, m o g. La larghezza di banda I/O minima limitata è 524288 byte anche se si specifica un valore inferiore.
Opzione Descrizione
/iomaxsize:<n>[kmg]
La dimensione massima richiesta per ciclo di lettura/scrittura in kilobyte, megabyte o gigabyte.
/iorate:<n>[kmg]
La velocità di I/O richiesta in kilobyte, megabyte o gigabyte al secondo.
/threshold:<n>[kmg]
La soglia della dimensione del file per la limitazione in kilobyte, megabyte o gigabyte


Opzioni di selezione file

Opzione Descrizione
/a
Copia solo i file per i quali è impostato l'attributo Archivio.
/m
Copia solo i file per i quali è impostato l'attributo Archivio e reimposta l'attributo Archivio.
/ia:[RASHCNETO]
Include solo i file per i quali sono impostati gli attributi specificati. I valori validi per questa opzione sono:
R - Read only
A - Archive
S - System
H - Hidden
C - Compressed
N - Not content indexed
E - Encrypted
T - Temporary
O - Offline
/xa:[RASHCNETO]
Esclude solo i file per i quali sono impostati gli attributi specificati. I valori validi per questa opzione sono:
R - Read only
A - Archive
S - System
H - Hidden
C - Compressed
N - Not content indexed
E - Encrypted
T - Temporary
O - Offline
/xf [ ...]
Esclude i file che corrispondono ai nomi o ai percorsi specificati. Sono supportati i caratteri jolly (* e ?).
/Xd [ ...]
Esclude le directory che corrispondono ai nomi e ai percorsi specificati.
/xc
Esclude i file esistenti con lo stesso timestamp, ma dimensioni di file diverse.
/xn
I file di directory di origine più recenti rispetto alla destinazione vengono esclusi dalla copia.
/xo
I file della directory di origine precedente a quella di destinazione vengono esclusi dalla copia.
/xx
Esclude file e directory aggiuntivi presenti nella destinazione, ma non nell'origine. L'esclusione di file aggiuntivi non elimina i file dalla destinazione.
/xl
Esclude file e directory "solitari" presenti nell'origine ma non nella destinazione. L'esclusione di file solitari impedisce l'aggiunta di nuovi file alla destinazione.
/im
Includere i file modificati (tempi di modifica diversi).
/is
Include gli stessi file. Gli stessi file sono identici per nome, dimensioni, orario e tutti gli attributi.
/it
Include file "modificati". I file modificati hanno lo stesso nome, dimensioni e orario, ma attributi diversi.
/max:<n>
Specifica la dimensione massima del file (per escludere i file più grandi di n byte).
/min:<n>
Include file "modificati". I file modificati hanno lo stesso nome, dimensioni e orario, ma attributi diversi.
/maxage:<n>
Specifica l'età massima dei file per escludere i file più vecchi di n giorni o una data basata sull'ultima modifica dei file.
/minage:<n>
Specifica l'età minima dei file per escludere quelli più recenti di n giorni o una data basata sull'ultima modifica dei file.
/maxlad:<n>
Specifica la data massima dell'ultimo accesso (esclude i file inutilizzati da n).
/minlad:<n>
Specifica la data minima dell'ultimo accesso (esclude i file utilizzati dopo n). Se n è inferiore a 1900, n specifica il numero di giorni. Altrimenti, n specifica una data nel formato YYYYMMDD.
/xj
Esclude i punti di giunzione, che vengono normalmente inclusi per impostazione predefinita.
/fft
Presuppone i tempi dei file FAT (precisione di due secondi).
/dst
Compensa le differenze di tempo di un'ora DST.
/xjd
Esclude i punti di giunzione per le directory.
/xjf
Esclude i punti di giunzione per i file.


Opzioni di riprova

Opzione Descrizione
/r:<n>
Specifica il numero di tentativi per le copie non riuscite. Il valore predefinito di n è 1.000.000 (un milione di tentativi).
/w:<n>
Specifica il tempo di attesa tra i tentativi, in secondi. Il valore predefinito di n è 30 (tempo di attesa 30 secondi).
/reg
Salva i valori specificati nelle opzioni /r e /w come impostazioni predefinite nel Registro di sistema.
/tbd
Specifica che il sistema attende che i nomi delle condivisioni vengano definiti (errore di ripetizione del tentativo 67).
/lfsm
Funziona in modalità di spazio libero insufficiente che consente la copia, la pausa e la ripresa
/lfsm:<n>[kmg]
Specifica le dimensioni del pavimento in n kilobyte, megabyte o gigabyte.

Opzioni di registrazione (Log)
L'opzione di logging è cruciale per la verifica e l'automazione.

Opzione Descrizione
/l
Specifica che i file devono essere solamente elencati (e non copiati, eliminati o contrassegnati come timestamp).
/x
Segnala tutti i file aggiuntivi, non solo quelli selezionati.
/v
Produce un output dettagliato e mostra tutti i file ignorati.
/ts
Include i timestamp dei file di origine nell'output.
/fp
Include i nomi completi dei percorsi dei file nell'output.
/bytes
Stampa le dimensioni come byte.
/ns
Specifica che le dimensioni dei file non devono essere registrate.
/nc
Specifica che le classi dei file non devono essere registrate.
/nfl
Specifica che i nomi dei file non devono essere registrati.
/ndl
Specifica che i nomi di directory non devono essere registrati.
/np
Specifica di non visualizzare lo stato di avanzamento dell'operazione di copia (il numero di file o directory copiati finora).
/eta
Mostra il tempo stimato di arrivo (ETA) dei file copiati.
/log:<logfile>
Scrive l'output di stato nel file di log sovrascrivendo il file di log esistente.
/log+:<logfile>
Scrive l'output dello stato nel file di registro (aggiunge l'output al file di registro esistente).
/unilog:<logfile>
Scrive l'output dello stato nel file di registro come testo Unicode (sovrascrive il file di registro esistente).
/unilog+:<logfile>
Scrive l'output dello stato nel file di registro come testo Unicode (aggiunge l'output al file di registro esistente).
/tee
Scrive l'output dello stato nella finestra della console e nel file di registro.
/njh
Specifica che non è presente alcuna intestazione del processo.
/njs
Specifica che non è presente alcun riepilogo del lavoro.
/unicode
Visualizza l'output dello stato come testo Unicode.

Opzioni processo (Job)

Opzione Descrizione
/job:<jobname>
Specifica che i parametri devono essere derivati dal file di processo denominato. Per eseguire /job:jobname, è prima necessario eseguire il parametro /save:jobname per creare il file di processo.
/save:<jobname>
Specifica che i parametri devono essere salvati nel file di processo denominato. Questa operazione deve essere eseguita prima di eseguire /job:jobname. Tutte le opzioni di copia, ripetizione e registrazione devono essere specificate prima di questo parametro.
/quit
Esce dopo l'elaborazione della riga di comando (per visualizzare i parametri).
/nosd
Indica che non è specificata alcuna directory di origine.
/nodd
Indica che non è specificata alcuna directory di destinazione.
/if
Include i file specificati.


Codici di Uscita (Return Codes)

Al termine di un'operazione, Robocopy restituisce un codice numerico che può essere catturato da script batch per prendere decisioni.
Valore Descrizione
0
Nessun file copiato. Non è stato rilevato alcun errore. Nessun file non corrispondente. I file esistono già nella directory di destinazione, pertanto, l'operazione di copia è stata ignorata.
1
Tutti i file sono stati copiati correttamente.
2
Nella directory di destinazione sono presenti alcuni file aggiuntivi che non sono presenti nella directory di origine. Nessun file copiato.
3
Alcuni file sono stati copiati. Erano presenti file aggiuntivi. Non è stato rilevato alcun errore.
5
Alcuni file sono stati copiati. Alcuni file non corrispondono. Non è stato rilevato alcun errore.
6
Esistono file aggiuntivi e file non corrispondenti. Non sono stati copiati file e non sono stati rilevati errori, il che significa che i file esistono già nella directory di destinazione.
7
I file sono stati copiati, erano presenti una mancata corrispondenza dei file e file aggiuntivi.
8
Diversi file non sono stati copiati.

Qualsiasi valore uguale o maggiore di 8 indica che si è verificato almeno un errore durante l'operazione di copia.

Note

  • L'utilizzo di /PURGE o /MIR nella directory radice del volume in precedenza causava l'applicazione dell'operazione richiesta da parte di robocopy anche ai file all'interno della directory System Volume Information. Questo non è più il caso come se sia specificato, robocopy ignora tutti i file o le directory con tale nome nelle directory di origine e di destinazione di primo livello della sessione di copia.
  • La classificazione dei file modificati si applica solo quando i file system di origine e di destinazione supportano timestamp di modifica, ad esempio NTFS, e i file di origine e di destinazione hanno tempi di modifica diversi, ma per il resto sono gli stessi. Questi file non vengono copiati per impostazione predefinita. Specificare /IM per includerli.
  • Il flag /DCOPY:E richiede che venga tentata la copia estesa degli attributi per le directory. Robocopy continua l'operazione di copia anche se non è stato possibile copiare le EA di una directory. Questo flag non è incluso in /COPYALL.
  • Se si specifica /IoMaxSize o /IoRate, robocopy abilita la limitazione dei file di copia per ridurre il carico del sistema. Entrambi possono essere modificati in valori ottimali e parametri di copia, ma il sistema e robocopy sono autorizzati a modificarli in base ai valori consentiti in funzione delle esigenze.
  • Se si utilizza /Threshold, viene specificata una dimensione minima del file per l'attivazione della limitazione. I file al di sotto delle dimensioni non vengono limitati. I valori per tutti e tre i parametri possono essere seguiti da un carattere di suffisso facoltativo, ad esempio [KMG] (kilobyte, megabyte, gigabyte).
  • L'utilizzo di /LFSM richiede che robocopy funzioni in "modalità spazio libero insufficiente". In questa modalità robocopy si sospende ogni volta che una copia di file causa lo spazio disponibile del volume di destinazione al di sotto di un valore "floor". Questo valore può essere specificato in modo esplicito utilizzando il flag /LFSM:n[KMG].
  • Se si specifica /LFSM senza alcun valore di piano esplicito, il piano viene impostato su 10% delle dimensioni del volume di destinazione. La modalità di spazio libero insufficiente non è compatibile con /MT e /EFSRAW.


Esempi


Esempio 1 - Copia Base con Log
Questo comando copia tutti i file e le sottodirectory, comprese quelle vuote, da una cartella di origine a una di destinazione. Inoltre, crea un file di log per registrare l'operazione, permettendo di verificarne l'integrità successivamente.
robocopy C:\Users\Admin\Records D:\Backup /E /ZB /LOG:C:\Logs\Backup.log
  • robocopy C:\Users\Admin\Records D:\Backup: Indica l'origine (C:\...) e la destinazione (D:\...).
  • /E: Copia le sottodirectory, comprese quelle vuote.
  • /ZB: Usa la modalità di backup. Se l'utente non ha i permessi completi, prova a usare la modalità di backup per garantire la copia di tutti i file.
  • /LOG:C:\Logs\Backup.log: Crea un file di log chiamato Backup.log nel percorso specificato. Se il file esiste, lo sovrascrive. Usa /LOG+ per aggiungere al file di log esistente.

Esempio 2 - Mirroring (Sincronizzazione)
Questa opzione esegue il "mirroring" di una cartella, rendendo la destinazione una copia esatta dell'origine. I file nella destinazione che non esistono nell'origine vengono eliminati, garantendo una sincronizzazione perfetta.
robocopy C:\Users\Admin\Records D:\Backup /MIR /R:2 /W:5 /LOG:C:\Logs\Backup.log
  • /MIR: Esegue il mirroring. Attenzione: questo parametro elimina i file nella destinazione che non sono presenti nell'origine.
  • /R:2: Imposta 2 tentativi in caso di errori di copia.
  • /W:5: Imposta un'attesa di 5 secondi tra i tentativi.

Esempio 3 - Copia con Multithreading
Questo comando copia file e sottodirectory non vuote, mantenendo i metadati originali (data, attributi, timestamp). L'uso del multithreading accelera notevolmente il processo, specialmente con un gran numero di file piccoli.
robocopy C:\Users\Admin\Records D:\Backup /S /E /COPY:DAT /MT:16 /LOG:C:\Logs\Backup.log
  • /S: Copia le sottodirectory, ma non quelle vuote.
  • /COPY:DAT: Preserva i dati (D), gli attributi (A) e i timestamp (T) dei file.
  • /MT:16: Utilizza 16 thread per la copia. Si possono specificare da 1 a 128 thread.

Esempio 4 -  Spostamento di File (Taglia e Incolla)
A differenza della copia, lo spostamento sposta i file e le cartelle dall'origine alla destinazione. Questa opzione è utile per trasferire dati e liberare spazio nell'origine.
robocopy C:\Users\Admin\Records D:\Backup /S /MAXAGE:7 /MOV /LOG:C:\Logs\Backup.log
  • /MOV: Sposta i file, cancellandoli dall'origine dopo la copia.
  • /MAXAGE:7: Sposta solo i file che sono stati modificati negli ultimi 7 giorni.

Esempio 5 - Sincronizzazione Aggressiva
Questo comando combina l'opzione di eliminazione di file obsoleti (/PURGE) con la visualizzazione di un tempo stimato per ogni file (/ETA). È un'opzione di sincronizzazione più aggressiva del mirroring.
robocopy C:\Users\Admin\Records D:\Backup /ETA /PURGE /LOG:C:\Logs\Backup.log
  • /PURGE: Elimina file e directory dalla destinazione se non esistono più nell'origine. È simile a /MIR ma non copia i permessi di sicurezza dei file.
  • /ETA: Mostra il tempo stimato per il completamento della copia per ogni file.

Esempio 6 - Limitazione della Velocità di I/O
Questo è utile per evitare che il processo di copia sovraccarichi la rete o il disco, rendendolo più gestibile in contesti dove la banda è limitata.
robocopy C:\Records D:\Backup /iorate:1m
  • /iorate:1m: Limita la velocità di I/O a 1 megabyte al secondo. Si possono usare vari suffissi (K per kilobyte, M per megabyte, G per gigabyte).

Esempio 7 - Evitare la Copia di File Esistenti
Questo comando è utile per un aggiornamento selettivo. Robocopy ignora i file che esistono già nella destinazione, indipendentemente dalla loro data di modifica.
robocopy C:\Source C:\Destination /XC /XN /XO
  • /XC: Esclude i file che sono cambiati (stesso nome, contenuto diverso).
  • /XN: Esclude i file nuovi (esistono nella sorgente ma non nella destinazione).
  • /XO: Esclude i file obsoleti (esistono nella destinazione ma non nella sorgente).



sabato 16 agosto 2025

MS Excel: Aggiungere una mappa dinamica ai dati di una tabella

Questo articolo illustra la procedura per creare una mappa interattiva collegata a una tabella in Excel. Supponiamo di avere una tabella con dei dati come quella mostrata in FIG 1.
Tabella Excel
FIG 1 - Tabella Excel

Per convertire il set di dati in una tabella, selezionare una qualsiasi cella al suo interno e premere la combinazione di tasti CTRL+T. Nella finestra di dialogo Crea tabella, verificare che l'opzione Tabella con intestazioni sia spuntata e che l'intervallo di dati sia corretto, quindi fare clic su OK.
Posizione dei dati per la tabella
FIG 2 - Posizione dei dati per la tabella
Per inserire un filtro dati, cliccare su Inserisci filtro dei dati, selezionare il campo Stato (che corrisponde alla prima colonna della tabella) e fare clic su OK.

Inserisci filtro dei dati
FIG 3 - Inserisci filtro dei dati

Posizionare il filtro dati sopra la tabella e impostare il numero di colonne a 3 tramite l'apposita casella. Ciò assicurerà che il filtro si allinei visivamente con la larghezza della tabella.
Filtro
FIG 4 - Filtro
Dal menu Inserisci selezionare Mappa. Assicurarsi che, nella tabella, sia selezionata l'intestazione Guadagni (per visualizzarla all'interno della mappa).
Mappa
FIG 5 - Mappa

A questo punto selezionando uno degli stati nel filtro dati, la mappa si aggiornerà dinamicamente, visualizzando lo stato selezionato e i relativi dati della colonna Guadagni della tabella.
Filtro Mappa
FIG 6 - Filtro Mappa