Listbox che non si aggiorna - File di dati condiviso

Ciao a tutti, eccomi di nuovo e con un nuovo problema.
Stò lavorando con una rubrica telefonica  posizionata sul server e condivisa su più computer che sfrutta un foglio dati organizzato in tabella (è il primo foglio della cartella di lavoro) dove si registrano tutti i contatti con nominativo, indirizzo,cap,città, teleefono, fax ecc. ecc.. attraverso un form che contiene delle Listbox.

Quindi il file è composto soltanto dal foglio tabella dati e da un form che serve per lavorare.

Qualsiasi cosa venga fatta su un pc o sugli altri, ad esempio l'immissione di un nuovo contatto, la cancellazione, la modifica, le ricerche e così via, sul computer che sta lavorando è visibile, sia l'aggiunta che le altre modifiche, mentre sugli altri per poterle vedere si deve chiudere il file e riaprirlo.

Il procedimento che ho adottato è questo:
Apertura del file con la tabella:
In condivisione ho spuntato Aggiorna modifiche al salvataggio del file.
Dopo l'immissione di un nuovo contatto il file viene salvato in automatico sul server.
Dopo una modifica il file viene salvato in automatico sul server.
Dopo una eliminazione il file viene salvato in automatico sul server.


Devo forse oltre al salvataggio fare ricaricare il file ? Ma come faccio senza chiudere ?
ActiveWorkbook.ResfreAll dopo ogni salvataggio ?
 
Grazie dei vostri preziosi consigli.
Tullio
 

Informazioni domanda


Ultimo aggiornamento febbraio 27, 2018 Visualizzazioni 313 Si applica a:

* Prova con un numero di pagina inferiore.

* Immetti solo numeri.

* Prova con un numero di pagina inferiore.

* Immetti solo numeri.

Se utilizzo un pulsante associato alla macro che esegue ActiveWorkbook.RefreshAll mi da un errore di "Err 438 Metodo non supportato dall'oggetto".

Dopo che ho reso Public la Sub l'errore non lo dà più ma il risultato è lo stesso.

Nessuno sa niente ? Non ci credo .
Tullio

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.

...
Devo forse oltre al salvataggio fare ricaricare il file ? Ma come faccio senza chiudere ?
ActiveWorkbook.ResfreAll dopo ogni salvataggio ?
 
Grazie dei vostri preziosi consigli.
Tullio
Ciao Tullio,
a me personalmente non piace utilizzare le cartelle condivise perché sono fonte di grandi problemi, per questo ci sono i gestori di data base.

Comunque, puoi utilizzare ed approfondire le seguenti proprietà e metodi dell'oggetto WorkBook:
  • la proprietà MultiUserEditing
  • il metodo AcceptAllChanges
  • il metodo SaveAs con particolare riferimento ai parametri AccessMode e ConflictResolution
Andrea.
Andrea

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.


a me personalmente non piace utilizzare le cartelle condivise perché sono fonte di grandi problemi, per questo ci sono i gestori di data base.

Andrea.

+1

Per Tullio:
se vuoi utilizzare Excel (meglio, un foglio di Excel) come database (mi perdonino SQLServer e c.), anzichè un unico file condiviso da tutti, meglio il file bello chiuso e gli accessi da altri file distribuiti sui client. Un po' di vb e risolvi in modo elegante e sicuro.



--
Mauro Gamberini
Microsoft© MVP (Excel)
http://www.maurogsc.eu

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.

...
Comunque, puoi utilizzare ed approfondire le seguenti proprietà e metodi dell'oggetto WorkBook:
  • la proprietà MultiUserEditing
  • il metodo AcceptAllChanges
  • il metodo SaveAs con particolare riferimento ai parametri AccessMode e ConflictResolution
Andrea.
Ciao Andrea,, ho fatto (credo) tutte le prove possibili, ma non cambia niente se non che mi salva da solo il file con la condivione.
Grazie comunque.
Tullio

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.

Per Tullio:
se vuoi utilizzare Excel (meglio, un foglio di Excel) come database (mi perdonino SQLServer e c.), anzichè un unico file condiviso da tutti, meglio il file bello chiuso e gli accessi da altri file distribuiti sui client. Un po' di vb e risolvi in modo elegante e sicuro.



Ciao Mauro,
se ben capisco tu diresti di:
1) La Tabella Rubrica lasciarla condivisa in rete (un foglio soltanto)
2) Installare su ogni pc il form che accede alla tabella

cosa vuol dire bello chiuso, come ci accedo ?

Però esiste anche il famoso Gestione Progetti che accede alla medesima tabella.

Devo cambiare tutto il codice del form oppure credi che sia necessario solo modificare l'indirizzo della Tabella ?

Grazie.
Tullio


Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.




Ciao Mauro,
se ben capisco tu diresti di:
1) La Tabella Rubrica lasciarla condivisa in rete (un foglio soltanto)
2) Installare su ogni pc il form che accede alla tabella

cosa vuol dire bello chiuso, come ci accedo ?





Accedi via vb/ADO. Il file con la tabella può essere chiuso. Il file con la tabella può trovarsi in una macchina qualsiasi, l'importante è chi accede alla directory dove risiede il file, abbia le autorizzazioni.

Qui un semplice (semplice!) esempio di come recuperare i dati dal file Dati tramite ADO. Apri il file Lavoro e premi il pulsante Importa. Da li, il mondo...


--
Mauro Gamberini
Microsoft© MVP (Excel)
http://www.maurogsc.eu

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.

Ciao Mauro ho fatto la prova sostituendo i tuoi dati con la mia rubrica e la carica in un lampo, però:
non so se ho capito !
devo per forza importare i dati su un foglio di excel? O è solo nell'esempio ? Mi sono accorto che se è aperta la cartella Lavoro, la cartella Dati me la apre in sola lettura.
essendo una rubrica telefonica è in continuo cambiamento, nuove immissioni e modifiche sono all'ordine del giorno, anzi dell'ora, e ogni volta devo risalvare il tutto e ricaricarlo con i cambiamenti come attualmente?.
Forse mi sono fatto spaventare dal codice perché sono una schiappa, ma poi dovrei riempire le listbox del form (come del resto faccio ora) e per salvare i cambiamenti ?
Grazie.
Tullio

P.S.: Poi esiste il famoso Gestione Progetti & Notule che utilizza la stessa tabella.

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.


Forse mi sono fatto spaventare dal codice perché sono una schiappa, ma poi dovrei riempire le listbox del form (come del resto faccio ora) e per salvare i cambiamenti ?




La mia era una risposta che indicava una soluzione diversa in caso di file che deve essere condiviso.

In quel modo distribuisci file che possono interagire con il file Dati anche se chiuso. Non serve la condivisione. Quindi, i dati da una parte, la logica e l'interfaccia, da un'altra. E' cos' che si dovrebbe fare...

Se all'inizio specificavi che il tuo contesto prevedeva che più persone dovessero condividere il file, ti si indicava da subito una strada diversa.

Vedi tu se vuoi partire per un nuovo viaggio. Prima però pensa alle cose che hai in valigia e non basarti solo sugli aiuti che *speri* di trovare cammin facendo. (vammolà Mauro, che poesia questa mattina...)

Al link qui sotto, puoi scaricare lo stesso esempio di prima con l'aggiunta di un pulsante che richiama una UserForm che al suo avvio carica i dati del file Dati in una ListBox:

Il fatto che ti indichi una strada, non vuol dire che la percorreremo assieme.


E riposto la solita nota.

----
NOTA. Questo forum nasce per risolvere piccoli problemi legati all'utilizzo di Excel e del suo VB. Piccoli problemi. Progetti complessi e personali sono OT(Off Topic/fuori argomento). Sarebbe cosa gradita a chi risponde, leggere domande chiare, ben documentate e mirate ad un argomento specifico. Grazie.
--
Mauro Gamberini
Microsoft© MVP (Excel)
http://www.maurogsc.eu

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.

Ciao Mauro,
in quanto alla condivisione mi sembrava di essere stato chiaro nel mio primo messaggio però se dici così vuol dire sicuramente di no e me ne scuso.
Per quanto riguarda il nuovo viaggio devo dirti che l'ho già fatto in quanto in precedenza la Rubrica l'avevo fatta con Access,(e funzionava egregiamente) poi cercando di uniformare il tutto con l'altro Progetto (venuto bene) e sicuramente sbagliando ho voluto farla con Excel e qui ho trovato l'intoppo dell'aggiornamento che non so come risolvere ma non avrei creduto che la mia domanda creasse problemi e/o risentimenti nel forum.
Detto questo, rimane il fatto di come classificare grande o piccolo un problema, io non vendo programmi, quel pochissimo che ho fatto è a uno personale nell'ufficio di mio figlio e a me pare una utile e divertente sciocchezza, ma indubbiamente per te o per voi non è così.
Mi pare anche di non averti mai chiesto di percorrere la strada con me, conosco; i miei limiti e capisco le tue conoscenze.
Grazie comunque di tutte le indicazioni.
Tullio

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.


Grazie comunque di tutte le indicazioni.
Tullio


Domanda: perchè non hai lasciato i dati (le tabelle) sul db di Access e l'interfaccia/la logica in Excel?
Concentrare *tutto* in un unico file e poi accedervi in condivisione non è una grande idea.
Oltretutto in questo caso Access farebbe il suo mestiere (db) ed Excel non verrebbe tirato per la coda.

Avere interfaccia/logica su Excel e i dati su Access è un'ottima idea (anche per i costi, 1 sola licenza di Access).

E non fraintendere quello che ho scritto in precedenza. Ho solo voluto ribadire lo scopo del forum.

Amici? Amici!
--
Mauro Gamberini
Microsoft© MVP (Excel)
http://www.maurogsc.eu

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.

* Prova con un numero di pagina inferiore.

* Immetti solo numeri.

* Prova con un numero di pagina inferiore.

* Immetti solo numeri.