Condividi:        

menu per fogli

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

menu per fogli

Postdi totopc » 09/06/10 14:51

vidi che c'era un file dove sul primo foglio di excel c'era l'elenco degli altri
cioe se io andavo su foglio 1 dell'elenco mi portava sul foglio 1 ecc ecc
sto cercando di trovarlo ma non mi ricordo il nome ........
una volta trovato vorrei sapere come si puo ampliare per una lista piu grande (li c'erano solo 4 fogli)
:) ciao
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Sponsor
 

Re: menu per fogli

Postdi Flash30005 » 09/06/10 15:13

Puoi mettere quanti fogli vuoi
e l'elenco dei fogli nella colonna A
da A2 in poi
poi nel Vba del foglio1 (il foglio dell'elenco)
inserirai questo codice
Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UR = Worksheets("Foglio1").Range("A" & Rows.Count).End(xlUp).Row
CheckA = "A1:A" & UR
If Not Application.Intersect(ActiveCell, Range(CheckA)) Is Nothing Then
    If (Selection.Rows.Count + Selection.Columns.Count) > 2 Or Target = "" Then Exit Sub
    Foglio = Target
    Worksheets(Foglio).Select
End If
End Sub


Fai sapere
Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: menu per fogli

Postdi totopc » 09/06/10 19:23

tutto ok
posso iniziare
grazie :) :) :) :)
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi Flash30005 » 09/06/10 23:22

Se i fogli sono molti...
potremmo nascondere tutti quelli non interessati escluso l'indice
ad ogni click si apre il foglio richiesto e nasconde il precedente lasciando sempre e solo due fogli attivi (indice e foglio visualizzato)

Fai sapere

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: menu per fogli

Postdi pietrol » 10/06/10 13:10

Ciao totopc
se clicchi col destro sulle frecce in basso a sinistra, di fianco alle etichette dei fogli, appare un elenco completo dei fogli del file, cliccando sui quali hai lo stesso risultato.

ciao
pietrol
il lupo ululà, il castello ululì
pietrol
Utente Senior
 
Post: 270
Iscritto il: 07/01/09 14:34

Re: menu per fogli

Postdi totopc » 12/06/10 17:04

Se i fogli sono molti...
potremmo nascondere tutti quelli non interessati escluso l'indice
ad ogni click si apre il foglio richiesto e nasconde il precedente lasciando sempre e solo due fogli attivi (indice e foglio visualizzato)

Fai sapere

Ciao
mi va bene questa soluzione
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi totopc » 12/06/10 17:13

totopc ha scritto:Se i fogli sono molti...
potremmo nascondere tutti quelli non interessati escluso l'indice
ad ogni click si apre il foglio richiesto e nasconde il precedente lasciando sempre e solo due fogli attivi (indice e foglio visualizzato)

Fai sapere

Ciao
mi va bene questa soluzione

ho provato la soluzione prec.pero mi da
esempio
elenco-5-6-8-10-11 (questi sono i fogli piu altri)
se da elenco premo 5 non mi da niente
se da elenco premo 6 mi da 5
se da elenco premo 8 mi da 8
se da elenco premo 10 mi da 11
se da elenco premo 11 mi da 12
e cosi via
forse perche ad di fuori di questa lista ho prima di elenco altri fogli ?
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi totopc » 12/06/10 17:48

totopc ha scritto:
totopc ha scritto:Se i fogli sono molti...
potremmo nascondere tutti quelli non interessati escluso l'indice
ad ogni click si apre il foglio richiesto e nasconde il precedente lasciando sempre e solo due fogli attivi (indice e foglio visualizzato)

Fai sapere

Ciao
mi va bene questa soluzione

ho provato la soluzione prec.pero mi da
esempio
elenco-5-6-8-10-11 (questi sono i fogli piu altri)
se da elenco premo 5 non mi da niente
se da elenco premo 6 mi da 5
se da elenco premo 8 mi da 8
se da elenco premo 10 mi da 11
se da elenco premo 11 mi da 12
e cosi via
forse perche ad di fuori di questa lista ho prima di elenco altri fogli ?

ps ho capito l'errore dov'è
in pratica ho rinominato i fogli e non corrispondono alla sequenza del menu
si puo modificare il tutto in base al nome che ho dato io?
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi Anthony47 » 12/06/10 18:09

se da elenco premo 5 non mi da niente
se da elenco premo 6 mi da 5
se da elenco premo 8 mi da 8
se da elenco premo 10 mi da 11
se da elenco premo 11 mi da 12
No, il tuo elenco deve contenere il "NOME" del foglio. Cosa sono questi numeri?

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: menu per fogli

Postdi Flash30005 » 12/06/10 22:52

Ho modificato la macro (va inserita sul Foglio1 ovvero l'elenco dei fogli e sostituisce la precedente)

Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UR = Worksheets("Foglio1").Range("A" & Rows.Count).End(xlUp).Row
CheckA = "A1:A" & UR
If Not Application.Intersect(ActiveCell, Range(CheckA)) Is Nothing Then
    If (Selection.Rows.Count + Selection.Columns.Count) > 2 Or Target = "" Then Exit Sub
    Foglio = Target
For Each Ws In Worksheets
        If Ws.Name <> "Foglio1" Then Worksheets(Ws.Name).Visible = False
Next Ws
    Worksheets(Foglio).Visible = True
    Worksheets(Foglio).Select
End If
End Sub


Se il nome del foglio (elenco dei fogli) è diverso da "Foglio1" devi sostituire questo nome nella macro

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: menu per fogli

Postdi totopc » 12/06/10 23:11

scusa un attimo
ma io ho 60 fogli circa ...
...li devo rinominare tutti o solo il primo?
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi Flash30005 » 12/06/10 23:36

Non importa né iI nome dei fogli né il numero dei fogli
solo il foglio elenco o indice dei fogli (in quanto richiamato nella macro per non nasconderlo)
dovrà chiamarsi "Foglio1" per funzionare bene con il codice da me postato
Se il tuo foglio (indice) ha un nome diverso
dovrai cambiare all'interno della macro quel nome dando il nome del tuo foglio indice.
Es.
se il tuo foglio indice si chiama "Pippo"
Codice: Seleziona tutto
...
For Each Ws In Worksheets
        If Ws.Name <> "Pippo" Then Worksheets(Ws.Name).Visible = False '<<<<< cambiare qui il nome
Next Ws
...


(Potevo evitare di farti fare questa modifica ma così impostata dovrebbe essere più facile capire certi comandi)

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: menu per fogli

Postdi Anthony47 » 13/06/10 00:39

Per evitare, sul foglio "indice", il ragionamento sul "nome" del foglio si puo' usare il "CodeName", cioe' il nome univoco dato da excel a un foglio; e' quello che si legge nella finestra VbaProject, ed e' la sigla che precede il "nome" del foglio: talvolta le due cose coincidono, ma mentre il nome e' modificabile dall' utente il codename non lo e'.
Quindi ad esempio
Codice: Seleziona tutto
If Ws.CodeName <> "Foglio3" then etc etc

Codice: Seleziona tutto
UR = Foglio3.Range("A" & Rows.Count).End(xlUp).Row
In questi esempi ho immaginato che il CodeName del foglio "indice" sia Foglio3

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: menu per fogli

Postdi totopc » 14/06/10 09:24

in pratica cosa ho fatto
ho creato l'elenco con 60 fogli e tutto e andato bene
poi ho aggiunto altri fogli e non riesco ad inserirli nell'elenco precedente
mi spiego
quando vado nel fogli1 che e lindice e clicco per vedere fogli da 2 a 60 tutto ok
il resto non va
anzi quando voglio vedere gli altri fogli aggiunti non ci sono piu
che fare ?
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi Flash30005 » 14/06/10 09:41

Ma nell'elenco hai inserito i nomi di questi fogli aggiunti?
Il nome del foglio in elenco deve essere uguale alla linguetta dei fogli che vedi su excel e non quello che vedi nel VBA (frame di sinistra)
Poi chiarisci bene quali codici stai utilizzando perché le mie spiegazioni si riferiscono alla macro da me postata.
Per evitare confusione con il nome foglio (Elenco)
usa questa macro all'interno del vba del foglio (puo essere qualsiasi foglio con qualsiasi nome ma deve essere il foglio che contiene l''elenco di tutti i fogli contenuti nella cartella)
Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UR = Worksheets("Foglio1").Range("A" & Rows.Count).End(xlUp).Row
CheckA = "A1:A" & UR
If Not Application.Intersect(ActiveCell, Range(CheckA)) Is Nothing Then
    If (Selection.Rows.Count + Selection.Columns.Count) > 2 Or Target = "" Then Exit Sub
    Foglio = Target
For Each Ws In Worksheets
        If Ws.Name <> Name Then Worksheets(Ws.Name).Visible = False
Next Ws
    Worksheets(Foglio).Visible = True
    Worksheets(Foglio).Select
End If
End Sub


In questo caso rimarranno visibili solo il foglio (Elenco) e il foglio da te richiamato
Ciao

ATT:: Aggiunta macro alle ore 10:55
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: menu per fogli

Postdi totopc » 14/06/10 10:26

inizialmente ho messo 60 fogli e tutto andava bene
poi ho aggiunto altri fogli nell'elenco e mi da un errore di debug : worksheets (foglio).visibile = true
in pratica i fogli aggiunti nell'elenco non funzionano
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi totopc » 14/06/10 10:27

totopc ha scritto:inizialmente ho messo 60 fogli e tutto andava bene
poi ho aggiunto altri fogli nell'elenco e mi da un errore di debug : worksheets (foglio).visibile = true
indice non incluso nell'intervallo
in pratica i fogli aggiunti nell'elenco non funzionano
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi Flash30005 » 14/06/10 10:41

Secondo me hai messo nell'elenco un nome di foglio errato
fai una cosa
aggiungi un foglio nuovo e chiamalo "Elenco"
poi in un modulo metterai questa macro
Codice: Seleziona tutto
Sub CreaElencoFogli()
UR = Sheets("Elenco").Range("A" & Rows.Count).End(xlUp).Row
Sheets("Elenco").Range("A1:A" & UR).ClearContents
For Each ws In Worksheets
       Sheets("Elenco").Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Value = ws.Name
Next ws
End Sub

La avvii e avrai l'elenco di tutti i fogli contenuti nella cartella di excel
(fai attenzione la macro cancella ogni volta l'elenco per ricrearlo)

Fai sapere
Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: menu per fogli

Postdi totopc » 14/06/10 11:25

ho trovato errore grazie
ma al di fuori dell'elenco nosn si possono mettere fogli indipendenti da questo?
cioe l'elenco va bene pero mi servirebbero fogli fissi che non "scompaiono" ma restano fissi nel menu
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Re: menu per fogli

Postdi totopc » 14/06/10 11:29

totopc ha scritto:ho trovato errore grazie
ma al di fuori dell'elenco nosn si possono mettere fogli indipendenti da questo?
cioe l'elenco va bene pero mi servirebbero fogli fissi che non "scompaiono" ma restano fissi nel menu

quando ripremo elenco spariscono i fogli fissi (uso office 2003)
Avatar utente
totopc
Utente Senior
 
Post: 126
Iscritto il: 26/05/10 15:51

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "menu per fogli":


Chi c’è in linea

Visitano il forum: Nessuno e 155 ospiti