Chi ha aperto il file? (Microsoft Excel)
Joe ha chiesto se esiste un modo per determinare, in una macro, chi ha una particolare cartella di lavoro aperta. Ha pensato di usare la proprietà WriteReservedBy, ma non sembra avere le informazioni di cui ha bisogno.
Sfortunatamente, non c’è modo di determinare queste informazioni da VBA: semplicemente non sono accessibili. La proprietà WriteReservedBy non mostra chi ha un file aperto; mostra chi ha salvato la cartella di lavoro utilizzando una password. In altre parole, quando qualcuno salva una cartella di lavoro con l’opzione di avere una password per modificarla, il file è “WriteReserved”. La proprietà WriteReservedBy contiene il nome della persona che ha salvato il file nello stato WriteReserved.
Se hai solo bisogno di sapere la risposta (su chi ha il file aperto)
periodicamente, è più semplice raccogliere un elenco dei nomi dei file aperti e chiedere all’amministratore di rete di dirti chi li ha aperti: tali informazioni sono mantenute sulla rete e accessibili all’amministratore.
Un’altra possibile soluzione consiste nell’aggiungere una macro AutoOpen a ciascuna cartella di lavoro che scrive un file temporaneo su disco contenente il nome della persona che apre il file. La macro dovrebbe non solo aprire il file temporaneo, ma gestire le condizioni di errore, ad esempio un file temporaneo già aperto. Il file temporaneo potrebbe quindi essere accessibile da altre macro per vedere il nome che contiene.
La macro che si trova nel seguente sito può fornire un’altra soluzione per scoprire chi ha una particolare cartella di lavoro aperta:
https://bizintelsolutions.wordpress.com/2015/01/26/who-is-in-excel-xlsx-file/
Un altro luogo che può contenere una risposta è il sito VBNet. L’articolo in questa pagina contiene codice che può essere adattabile per le informazioni desiderate:
http://vbnet.mvps.org/index.html?code/network/netfileenum.htm
Tieni presente che il codice funziona solo nelle versioni precedenti di Windows. Dovrebbe funzionare perfettamente nelle versioni fino a Windows 7, ma procedi con calma quando si tratta di versioni successive: ti consigliamo di testarlo completamente per assicurarti che funzioni nel tuo ambiente.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (9511) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Excel qui: