Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

aprire e chiudere alcuni fogli di lavoro di un file

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

aprire e chiudere alcuni fogli di lavoro di un file

Postdi karl69 » 29/12/14 22:21

In un file con più fogli di lavoro, per aggiornare dei dati devo aprire e chiudere una lista di fogli
con una macro (in pratica devo attivare i codici di alcuni fogli per fare degli aggiornamenti)
è possibile ?
karl69
Newbie
 
Post: 2
Iscritto il: 29/12/14 21:31

Sponsor
 

Re: aprire e chiudere alcuni fogli di lavoro di un file

Postdi Zer0Kelvin » 30/12/14 00:35

Ciao.
Probabilmente è possibile, ma il quesito non è chiaro; prova a spiegare meglio cosa intendi con:
-aprire e chiudere una lista di fogli
e
-attivare i codici
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 303
Iscritto il: 08/04/12 11:23

Re: aprire e chiudere alcuni fogli di lavoro di un file

Postdi luca62 » 30/12/14 08:00

Eccomi e scusa se non sono stato chiaro.
Ho creato un collegamento tra il primo foglio di lavoro e i successivi.
In pratica quando vado a cambiare il valore in una cella ,esempio c3 del foglio 1,
se apro il foglio n2 . si attiva un codice che va a sproteggere i dati del foglio 2 ,li cambia
prendendo il valore c3 dal primo foglio e lo riprotegge, così se cambio la cella c4 del foglio 1,
e apro il foglio n3 . si attiva un codice che va a sproteggere i dati del foglio 3 ,li cambia
prendendo il valore c4 dal primo foglio e lo riprotegge e così via per 40 fogli, ossia tutti tranne gli ultimi 3.
Vorrei fare una macro ,che una volta cambiati alcuni valori nel primo foglio mi aggiornasse tuttìi i fogli
(o me li aprisse per far partire il codice di ciascun foglio).
In questa maniera ,mi farei un pulsante che attivi la macro medesima sul primo foglio che pigerei una volta
cambiati i valori
luca62 office2007 window7
luca62
Utente Senior
 
Post: 158
Iscritto il: 23/12/12 14:54

Re: aprire e chiudere alcuni fogli di lavoro di un file

Postdi luca62 » 30/12/14 09:24

Ps Per Antony e Zero Kelvin! avevo perso i dati della registrazione contenuti nel pc in azienda ( e ieri sera mi ero dovuto registrare nuovamente con un nuovo nick di fortuna!)
ora ho ripreso possesso del mio nick!!!
luca62 office2007 window7
luca62
Utente Senior
 
Post: 158
Iscritto il: 23/12/12 14:54

Re: aprire e chiudere alcuni fogli di lavoro di un file

Postdi Zer0Kelvin » 30/12/14 11:47

Ciao Luca.
In realtà non sarebbe necessario aprire (il termine corretto è attivare) i fogli per effettuare le modifiche.
Comunque, il meccanismo è sempre lo stesso come nell'altro tuo post: un ciclo For...Next da ripetere per ogni foglio interessato.
Supponendo che i fogli da aggiornare partano dal secondo foglio e siano 40, il ciclo sarebbe:
Codice: Seleziona tutto
For I=2 to 41
     'quello che devi fare
Next I
La soluzione più semplice (anche se "bruttina" dal punto di vista del programmatore) è attivare i fogli in modo da far eseguire il codice di ciascun foglio.
In tal caso il codice sarebbe
Codice: Seleziona tutto
Application.ScreenUpdating = False
For I = 2 To 41
    Worksheets(I).Activate
Next I
Worksheets(1).Activate
Application.ScreenUpdating = True
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 303
Iscritto il: 08/04/12 11:23

Re: aprire e chiudere alcuni fogli di lavoro di un file

Postdi luca62 » 30/12/14 16:47

grazie Mago! la sto testando per debuggare quello che stavo facendo...e infatti.... va tutto bene solo che si pianta quando trova un problema dovuto,non alla tua istruzione, ma ciò che attiva.
Ti spiego l'altro ..Mago di Antony mi aveva fatto una macro ad hoc:

Codice: Seleziona tutto
Private Sub Worksheet_Activate()
ActiveSheet.Unprotect
Dim myBase(1 To 4)
myBase(1) = "'H:\produzione\scheda preventivo\[ZCZCX.xls]CARTIGLIO'!A3"
myBase(2) = "'H:\produzione\scheda preventivo\[ZCZCX.xls]CARTIGLIO'!C3"
myBase(3) = "'H:\produzione\scheda preventivo\[ZCZCX.xls]CARTIGLIO'!B3"
myBase(4) = "'H:\produzione\scheda preventivo\[ZCZCX.xls]CARTIGLIO'!D3"
'Check esistenza file:
mySplit = Split(myBase(1), "[")
myFile = Replace(mySplit(0), "'", "") & Range("$D$2").Value & ".xls"
If Len(Dir(myFile)) = 0 Then
    MsgBox ("il file " & myFile & " non esiste" & vbCrLf & _
        "Le formule non sono state alterate")
    Exit Sub
End If
'
Application.EnableEvents = False
LastA = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To 4
    Cells(3, 1 + i).Resize(LastA - 3, 1).FormulaLocal = "=" & Replace(myBase(i), "ZCZCX", Range("$D$2").Value)
Next i
Application.EnableEvents = True
ActiveSheet.Name = Left([D2] & " " & [C2], 20)
ActiveSheet.Protect
End Sub


che funziona da Dio tranne che quando va a pescare un valore vuoto, (uguale a zero), è possibile in qualche maniera
far si che quando trova un valore vuoto (il $D$2) passi al foglio successivo? senza fermarsi ? mi da (ERRORE RUNTIME 1004)
e non va avanti,
luca62 office2007 window7
luca62
Utente Senior
 
Post: 158
Iscritto il: 23/12/12 14:54

Re: aprire e chiudere alcuni fogli di lavoro di un file

Postdi Anthony47 » 30/12/14 19:33

Ma se D2 e' vuoto, la macro non genera il messaggio "Il file xyz non esiste / Le formule non sono state alterate" ed esce (passando cosi' al foglio successivo)?
Quale istruzione va in errore?

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: 13894
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: aprire e chiudere alcuni fogli di lavoro di un file

Postdi luca62 » 09/01/15 09:30

Anthony
avevi ragione tutto ok è che quando si è ignoranti...come me per poter comunque lavorare si cercano le soluzioni empiriche...
avevo creato un file 0.xls e quindi mi andava in conflitto tutto ok e risolto alla grande!
luca62 office2007 window7
luca62
Utente Senior
 
Post: 158
Iscritto il: 23/12/12 14:54


Torna a Applicazioni Office Windows


Topic correlati a "aprire e chiudere alcuni fogli di lavoro di un file":


Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti