Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Excel Condiviso e autofilter

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Excel Condiviso e autofilter

Postdi pixilated » 04/01/14 18:58

Salve e BUON 2014... innanzitutto.
Ho un problema che non riesco a superare e che non mi sta facendo dormire la notte... :(
Ho creato un file Presenza aziendale che gestisce 500 collaboratori suddivisi in 5 linee di produzione, con in media 2 reparti per linea, calcolando i 3 turni lavorativi, questo file gestisce circa 30 squadre diverse. il tutto si traduce che in un turno circa 10 team leader devono accederci quasi contemporaneamente... :-?
Per rendere il più semplice possibile l'utilizzo del file ho predisposto un Userform che in base a chi utilizza il file da la possibilità con un filtro di visualizzare i collaboratori di cui si ha la gestione. Per ovvie ragioni il foglio è protetto da password, ma con il comando:

Private Sub Workbook_open()
Sheets(2).Protect Password:="x", UserInterfaceOnly:=True
End Sub

il file funziona.
Quando vado a condividere NON FUNZIONA! PERCHÉÉÉÉÉÉÉÉÉÉ????????
STO IMPAZZENDO.

Modrezione: topic spostato nella sezione "Applicazioni Office Windows"
pixilated
Newbie
 
Post: 6
Iscritto il: 21/11/13 20:27

Sponsor
 

Re: Excel Condiviso e autofilter

Postdi Flash30005 » 05/01/14 20:16

In che senso non funziona?
appare un messaggio di errore,
non protegge il foglio
oppure non lo sprotegge e va in errore quando attivi la macro?

Forse avresti dovuto dedicare più tempo a spiegare meglio il tipo di errore invece che dedicarlo a spiegare il tipo di file hai :D

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel Condiviso e autofilter

Postdi Anthony47 » 05/01/14 23:09

Se guardi l' help on line di Excel alla voce "Funzioni non disponibili nelle cartelle di lavoro condivise" troverai:
Non disponibile: Protezione o rimozione della protezione di fogli o cartelle di lavoro
Alternative: Le protezioni esistenti rimangono valide.

Pero', se la macro usa il filtro automatico per visualizzare a ognuno la parte di propria competenza, allora tieni presente che il filtro funziona anche su un foglio protetto; basta che quando imposti la protezione (e lo farai quando il file non e' condiviso) metti la spunta alla voce Consenti-Filtro automatico.

Ciao

PS: Inserire nella sezione "giusta" riduce il rischio di impazzimento 8)
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13892
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Excel Condiviso e autofilter

Postdi pixilated » 06/01/14 13:23

Salve a tutti, allora cercherò di entrare più nel dettaglio per cercare di capire dove sbaglio.
Nella protezione ho spuntato la voce "Consenti-Filtro automatico", ed infatti il filtro funziona (grazie all'opzione
"Sheets(2).Protect Password:="x", UserInterfaceOnly:=True" dell'avvio).

A questo punto condivido il file con password salvo e chiudo.

Quando apro il file mi compare l'errore di run-time '1004':"Errore definito dall'applicazione o dall'oggetto"
e quando avvio la macro che gestisce il filtro mi compare l'errore di run-time '1004': Impossibile utilizzare questo comando su un foglio protetto.etc etc
La macro è semplicemente questa:
Sub Macro1()
ActiveSheet.Range("$D$1:$D$1019").AutoFilter Field:=1, Criteria1:=Sheets(1).Range("h5").Value
End Sub

ho anche provato con:
Sub Macro1()
Sheets(2).Unprotect ("x")
ActiveSheet.Range("$D$1:$D$1019").AutoFilter Field:=1, Criteria1:=Sheets(1).Range("h5").Value
Sheets(2).Protect Password:=("x"), DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingRows:=True
End Sub

Ma stesse tipologie di errori...... DOVE SBAGLIO??????
pixilated
Newbie
 
Post: 6
Iscritto il: 21/11/13 20:27

Re: Excel Condiviso e autofilter

Postdi Anthony47 » 06/01/14 18:46

La mia posizione era che non hai bisogno di sproteggere il foglio per usare il filtro automatico, se questa operazione e' abilitata quando imposti la protezione.
Tuttavia...
Non ho una vera rete da simulare la condivisione, pero' sembrerebbe che in quel modo il filtro automatico lavora bene in manuale ma non da macro.
D' altra parte la protezione di un foglio condiviso non puo' essere modificata, quindi non puoi usare la macro di AutoOpen per impostare UserInterfaceOnly:=True.
Devi quindi trovare una alternativa.
Forse potresti
-lasciare il foglio con i dati originali protetto
-all' apertura del file copiare i dati in un foglio non protetto e nascondere il foglio originale
-lavorare su questo nuovo foglio

Se puo' andare bene allora prova, e se non risolvi scrivi ancora specificando su quale aspetto ti sei arenato.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13892
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Excel Condiviso e autofilter

Postdi pixilated » 08/01/14 02:58

Mmmmmmm non ce la farò mai :(
Ciao Antony sinceramente non ho idea di come mettere in pratica il tuo consiglio... non sono una cima nelle macro. Gradirei un esempio.... io sto gettando la spugna!
pixilated
Newbie
 
Post: 6
Iscritto il: 21/11/13 20:27

Re: Excel Condiviso e autofilter

Postdi Flash30005 » 08/01/14 09:48

All'inizio di un modulo inserisci questo codice
Codice: Seleziona tutto
Public FCopia, FMaster As String

Mentre in ThisWorkbook (o Questa_cartella_di_lavoro) il seguente codice
Codice: Seleziona tutto
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False
Sheets(FCopia).Delete
Application.DisplayAlerts = True
ActiveWorkbook.Save
End Sub

Private Sub Workbook_Open()
FMaster = "Master"  '<<<<< nome del foglio originale
FCopia = "Report"  '<<<<< nome del foglio messo a disposizione degli utenti
    Sheets(FMaster).Visible = True
    Sheets(FMaster).Copy After:=Worksheets(Worksheets.Count)
    ActiveSheet.Name = FCopia
Sheets(FMaster).Visible = False
End Sub


Ora devi solo modificare i nomi dei fogli dove indicato con <<<<

Se incontri problemi posta ancora

ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-


Torna a Applicazioni Office Windows


Topic correlati a "Excel Condiviso e autofilter":


Chi c’è in linea

Visitano il forum: Nessuno e 25 ospiti