Confronto con risultati differenti su differenti pc

di il
18 risposte

Confronto con risultati differenti su differenti pc

Buongiorno.

Ho voluto fare lo "sborrone" e mettere una chiave di sicurezza che permetta o no il salvataggio del file (Excel).

L'ho fatto perchè troppe persone hanno accesso al file ma solo il pc dell'operatrice deve essere abilitato al salvataggio.

Sul pc dell'operatrice ho messo un file testo "ChiaveContributi.txt" in C: e poi in Private Sub Workbook_Open() controllo se c'è.

Se non c'è metto il valore 1 in una cella e quando si cerca di salvarlo nella sub Workbook_BeforeSave se il valore è 1 impedisco l'uscita con salvataggio.

L'ho testato sul mio pc (windows 10 Excel 2019), sul mio notebook (windows 11 e excel 365). Tutto ok

Se lo testo sul notebook interessato, windows 11 Excel 365, non funziona ma dà l'allarme "Impossibile salvataggio ecc ecc". Allarme che io ho inserito in una Msgbox  se non trova il file in c:

Il problema è qua.

If FileEsiste("C:\ChiaveContributi.txt") = False Then Range("INS_DATI!AAA3").Value = 1

Function FileEsiste(FileName As String) As Boolean
     FileEsiste = (Dir(FileName) <> "")
End Function

Se faccio il run edit sul confronto FileEsiste = (Dir(FileName) <> ""), FileEsiste=False anche se il file si trova correttamente in c:

Ho pensato a qualche carattere magari inserito diverso tra FileName e il nome del file in c: e quindi ho fatto un copia incolla. Non capisco perchè mi funziona su due computer e non sul terzo. Stesso codice.

HELP. Qualche suggerimento ? Grazie

18 Risposte

  • Re: Confronto con risultati differenti su differenti pc

    Non usare la root per metterci questi file perché potresti avere problemi di diritto di accesso da parte di Excel (e di applicazioni in genere). Usa una cartella.

    P.S. comunque non mi pare una gran protezione, in nessun senso...

  • Re: Confronto con risultati differenti su differenti pc

    Ciao oregon grazie per la risposta.

    Chiaramente non devo contrastare un hacker ma funziona se qualcuno pasticcia, col proprio pc,  e poi cerca di salvare il file.

    Il tuo suggerimento mi sembra sensato. Dovrò testarlo sul notebook che da problemi ma non è qui con me.

    Ti farò sapere il risultato quando potrò utilizzarlo.

    Grazie ancora.

    PS: il codice è protetto da password. Il file è su google drive accessibile a molti utenti.

  • Re: Confronto con risultati differenti su differenti pc

    06/11/2025 - Premuroso ha scritto:

    Ciao oregon grazie per la risposta.

    Chiaramente non devo contrastare un hacker ma funziona se qualcuno pasticcia, col proprio pc,  e poi cerca di salvare il file.

    Il tuo suggerimento mi sembra sensato. Dovrò testarlo sul notebook che da problemi ma non è qui con me.

    Ti farò sapere il risultato quando potrò utilizzarlo.

    Grazie ancora.

    PS: il codice è protetto da password. Il file è su google drive accessibile a molti utenti.

    Un file xls non è un database...

    Anche con i permessi la modifica sarà sempre dell'ultimo salvataggio.

    Tu lavori sulla riga 100 un collega (col permesso) sulla riga 23 uno dei due non vedrà la modifica. Sicuro che potrebbe trattarsi di pasticciare e non che il file deve essere aperto uno alla volta?

    Si ok, accedi al file e blocchi tutti, poi ti scappa di andare e... I colleghi approfittano per la pausa caffè?

    06/11/2025 - Premuroso ha scritto:

    L'ho fatto perchè troppe persone hanno accesso al file ma solo il pc dell'operatrice deve essere abilitato al salvataggio.

    Almeno questo deduco dalle tue affermazioni.

    Se fosse così semplice non esisterebbe access.

  • Re: Confronto con risultati differenti su differenti pc

    06/11/2025 - Premuroso ha scritto:

    Il file è su google drive accessibile a molti utenti.

    Frena la mula: e come fanno a funzionare le macro? Impossibile. Vuole dire quindi che chi usa il file se ne scarica una copia in locale, la edita e poi la ricarica?

    Se fosse OneDrive, avresti lo stesso problema, a meno di non aprirlo con Excel Web. Ma in quel caso, serve capire se hai una struttura di utenti Microsoft. Allora potresti fare come in Google Drive e dare accesso in sola lettura a chi deve solo consultare ed in editing a chi deve mantenere il file aggiornato.

    Quella si che sarebbe un'inizio di protezione.

  • Re: Confronto con risultati differenti su differenti pc

    Grazie per le risposte.

    Si, se due utenti contemporaneamente aprono il file le modifiche apportate non saranno visibili tra di loro.

    Ma a me che importa ? Quando cercheranno di salvare il file gli sarà impossibile, salvo se a fare ciò, è l'operatore autorizzato.

    Quindi, dei due ipotetici utenti, solo lui salverà le modifiche apportate al file.

    Ci sono due diversi file di Excel gestiti da due operatori...ognuno il suo.

    Vabbè per la pausa caffè no problem...si tratta di un utenza casalinga per una società di volontariato.

    Non ho avuto ancora occasione di provare il suggerimento di oregon..... spero presto.

    Bye.

  • Re: Confronto con risultati differenti su differenti pc

    07/11/2025 - Premuroso ha scritto:

    Quindi, dei due ipotetici utenti, solo lui salverà le modifiche apportate al file.

    Prendi un file Word excel quello che vuoi

    Lo apri fai quello che vuoi e va via la corrente. Secondo te hai modificato il file?

    Prendi 2 PC ari lo stesso file dai due PC fai le modifiche su uno e sull'altro. Salva da uno , salva dal secondo, riapri il file e dimmi chi ha modificato realmente il file.

    Puoi usare un file TXT con scritto prova, pc1 modifica scrivendo pc1prova e pc2 con pc2prova

    L'ultimo che salva lo vedi dalla modifica.

    Quando apri un file lo copi in memoria poi o salvi e va a sovrascrivere il vecchio o annulli e non fa nulla.

    Mi sa che non sono gli autorizzati e non a fare casini...

  • Re: Confronto con risultati differenti su differenti pc

    sihsandrea grazie per il tuo intervento.

    Ok facciamo pure il quiz... copio incollo il tuo intervento.

    Prendi un file Word excel quello che vuoi

    Lo apri fai quello che vuoi e va via la corrente. Secondo te hai modificato il file? -------------- NO il file non è stato modificato se non è attivato il salvataggio automatico.

    Prendi 2 PC ari lo stesso file dai due PC fai le modifiche su uno e sull'altro. Salva da uno , salva dal secondo, riapri il file e dimmi chi ha modificato realmente il file.

    ------ Il secondo se il file è su Google Drive.

    Puoi usare un file TXT con scritto prova, pc1 modifica scrivendo pc1prova e pc2 con pc2prova

    L'ultimo che salva lo vedi dalla modifica. ---- Se la sequenza è come hai scritto e salvano il file, si salva pc2prova.

    Quando apri un file lo copi in memoria poi o salvi e va a sovrascrivere il vecchio o annulli e non fa nulla.

    Mi sa che non sono gli autorizzati e non a fare casini...

    ---- Il resto non l'ho capito.

    Si discute tanto per passare il tempo....

    Non capisco però tutto questo casino. Se tra i due (o più) che aprono il file solo uno ha la possibilità di salvarlo (tramite blocco software), non vedo dove è il problema.

    Chiaramente uno smaliziato và e toglie l'esecuzione delle macro sulla gestione sicurezza di Excel e fà tutto quello che vuole.

    Ma qua non si tratta di persone che vogliono INTENZIONALMENTE fare danni ma di curiosi o maldestri.

    Bye.

  • Re: Confronto con risultati differenti su differenti pc

    Buongiorno.

    Oggi ho potuto provare ad applicare il suggerimento di oregon. Ho spostato il file che fa da chiave che era in C:/ nella cartella documenti, ma il problema  rimane.

    La cartella documenti non è protetta (lucchetto aperto sull'icona).

    Ho fatto un copia e incolla dell'indirizzo del file in proprietà, cliccando con il dx del mouse, quindi escludo errori di sintassi nel codice.

    Ricordo che il problema è su - FileEsiste = (Dir(FileName) <> "") - che da come risultato falso.

    Suggerimenti ?

    Grazie.

  • Re: Confronto con risultati differenti su differenti pc

    13/11/2025 - Premuroso ha scritto:

    Ho spostato il file che fa da chiave che era in C:/ nella cartella documenti, ma il problema  rimane.

    Specifica qui esattamente qual è il percorso della cartella che hai indicato, così possiamo esaminare se è quella giusta.

    13/11/2025 - Premuroso ha scritto:

    La cartella documenti non è protetta (lucchetto aperto sull'icona).

    Non è chiaro cosa intendi con quel "lucchetto aperto" o con "protetta".

    13/11/2025 - Premuroso ha scritto:

    Ho fatto un copia e incolla dell'indirizzo del file in proprietà, cliccando con il dx del mouse, quindi escludo errori di sintassi nel codice.

    Noi non lo escludiamo: riporta comunque sempre il codice sorgente, perché se chiedi aiuto ed escludi di aver commesso errori o elimini indizi utili a prescindere, non ci è nemmeno possibile aiutarti, oltre al fatto che siamo costretti a fare ipotesi di errori o proposte di soluzioni anche sulle cose che non vediamo e non possiamo verificare.

    13/11/2025 - Premuroso ha scritto:

    Ricordo che il problema è su - FileEsiste = (Dir(FileName) <> "") - che da come risultato falso.

    Sì, ma non è detto che il problema sia in quell'istruzione, quanto più facilmente nel contesto che porta quella istruzione a dare il risultato errato.
    Non possiamo escludere nulla, quindi comunque tu riporta tutto e poi vediamo.

  • Re: Confronto con risultati differenti su differenti pc

    Alka grazie per la risposta.

    Cartella documenti protetta intendevo non crittografata.

    Pullltroppo non ho con me il pc.

    Portate pazienza... Sui due pc che ho a casa non mi da problemi.

    Chiederò di avere con me il portatile per alcuni giorni, così che si possa intervenire più rapidamente.

    Grazie ancora.

  • Re: Confronto con risultati differenti su differenti pc

    08/11/2025 - Premuroso ha scritto:

    Quando apri un file lo copi in memoria poi o salvi e va a sovrascrivere il vecchio o annulli e non fa nulla.

    Mi sa che non sono gli autorizzati e non a fare casini...

    ---- Il resto non l'ho capito.

    intendo dire che nondue utenti non stanno collegati al file come se due compagni di banco leggono un libro in comune. quello che accade è che viene caricato in memoria il file (ecco perchè se non salvi perdi tutto). ovviamente un pc salva quello che ha in memoria e che ha modificato, il secodo fa la stessa cosa. così tu pensi che pippo modifica la cella a2 e tu la cella b4 ma in realtà sarà modificata solo la cella dell'ultimo che ha salvato il file.

    08/11/2025 - Premuroso ha scritto:

    Si discute tanto per passare il tempo....

    in effetti è così, anche perchè basta mettere una password per la modifica anche se non risolve il problema della multiutenza abilitata che conosce la password.

    08/11/2025 - Premuroso ha scritto:

    Chiaramente uno smaliziato và e toglie l'esecuzione delle macro sulla gestione sicurezza di Excel e fà tutto quello che vuole.

    o semplicemente mette un file con nome ed estensione uguale...

  • Re: Confronto con risultati differenti su differenti pc

    Sihsandrea Grazie per la risposta.

    In effetti l'operatore usa un file salvato sul pc e quindi inarrivabile da chiunque esternamente.

    Poi in Excel ho inserito una macro che, quando salva il file sul pc, ne fa una copia su Google Drive in automatico.

    La chiave che voglio mettere quindi serve solo per proteggere la copia del file su Google Drive.

    Sembrerebbe una cosa inutile ma su quel file poi si aggiornano altri programmi.

    Aggiornamenti come per esempio: Lista dati degli utenti, dati degli iscritti, Indirizzi destinazioni, parco vetture e dati percorsi e chilometri, ecc ecc 

    Tutto viene immesso nel file principale e poi condiviso dagli altri file che si occupano di altre gestioni.

    Bye

  • Re: Confronto con risultati differenti su differenti pc

    Mi spiego meglio...

    06/11/2025 - Premuroso ha scritto:

    If FileEsiste("C:\ChiaveContributi.txt") = False Then Range("INS_DATI!AAA3").Value = 1

    lo hai messo sul foglio... se cambio il codice te ne accorgi ma se metto su c:\ un file di nome ChiaveContributi.txt (lo scrivi chiaramente) tu non sai che l'utente x può fare quello che vuole e tu stai ancora cercando di capire perchè non funziona... almeno aprire il file leggere "dhhfujsbj" come valore cifrato e decifrarlo per capire se da come risultato la chiave di autorizzazione avrebbe 1/10 di senso.

    ci sono molti programmi che gestiscono un parco auto a 4 soldi... altrimenti usi access.

    quello che stai tentando di fare non ha senso.

  • Re: Confronto con risultati differenti su differenti pc

    Sihsandrea non capisco il punto.

    1) Ho un utenza che non sono hacker distruttivi. Sanno a malapena usare i file Excel che gli ho dato.

    2) ChiaveContributi.txt è scritto nel codice ma protetto da password.

    3) Il file ChiaveContributi.txt (quando tutto funzionarà) lo renderò nascosto, cioè non visibile all'utente.

    Ho tre programmi in Excel che funzionano perfettamente...perchè dovrei usare access ?

    Non gestisco solo il parco macchine ma anche gli autisti e tutta la contabilità annessa. Resoconti semestrali e annuali ecc ecc

    Faccio del mio meglio anche se sono autodidatta. Facciamo 15 uscite di media al giorno. Bisogna verificare la disponibilità delle vetture e dei VOLONTARI che hanno anche gli affari loro da sbrigare. Viaggi programmati e poi cancellati e riassegnati per vari motivi 3-5 al giorno.

    Non è una ditta che ha degli autisti pagati e quindi sono (quasi) sicuri della loro presenza.

    Dai non voglio annoiarti più del dovuto.... però lascia giudicare a me se ciò a senso o no.

    Chiedo il vostro aiuto per risolvere un problema sperando nella vostra esperienza e un pizzico di fortuna.

    Bye

Devi accedere o registrarti per scrivere nel forum
18 risposte