Ciao JeanCK.
Non credo, o comunque la momento non mi viene in mente, che esista una
simile possibilita'. Che cosa hai in contrario riguardo lo spostare tale
Foglio di lavoro alla prima posizione? In modo che per trovarlo sia
sufficiente un clic sul primo dei quatto pulsanti:
|< < > >|Foglio 15/Foglio16/...
Cioe' quello identificato dal simbolo:
|<
Otterresti:
|< < > >|Foglio 1/Foglio2/...
--
Maurizio Borrelli [Microsoft MVP Office System]
http://www.riolab.org/
> Non credo, o comunque la momento non mi viene in mente, che esista una simile
> possibilita'. Che cosa hai in contrario riguardo lo spostare tale Foglio di
> lavoro alla prima posizione? In modo che per trovarlo sia sufficiente un clic
> sul primo dei quatto pulsanti:
>
> |< < > >|Foglio 15/Foglio16/...
ciao, il metodo che suggerisci è quello che uso...è però piuttosto
scomodo quando ad esempio, con 30 fogli di lavoro, devi passare spesso
dal numero 15 al primo, poi dal 21 al primo e così via, per carità
niente di tremendo ma speravo ci fosse il modo di far ciò che avevo
chiesto, non mi sembrava una feature così "esotica" :-)
ciao
[...]
> >> Per cortesia, mi sapreste dire se con Excel 2003 è possible bloccare la
> >> linguetta di un foglio di lavoro in modo che rimanga sempre in vista
> >> facendo scorrere le altre linguette?
> > Non credo, o comunque la momento non mi viene in mente, che esista una simile
> > possibilita'. Che cosa hai in contrario riguardo lo spostare tale Foglio di
> > lavoro alla prima posizione? In modo che per trovarlo sia sufficiente un clic
> > sul primo dei quatto pulsanti:
> > |< < > >|Foglio 15/Foglio16/...
> ciao, il metodo che suggerisci è quello che uso...è però piuttosto
> scomodo quando ad esempio, con 30 fogli di lavoro, devi passare spesso
> dal numero 15 al primo, poi dal 21 al primo e così via, per carità
> niente di tremendo ma speravo ci fosse il modo di far ciò che avevo
> chiesto, non mi sembrava una feature così "esotica" :-)
Ciao JeanCK.
Ho capito... e non ho capito. Fossero anche mille, i fogli, sempre di 2
clic 2 si tratterebbe: il primo sul pulsante |< e il secondo sulla
linguetta. Meno di due clic c'e' solo un clic: aggiungi un pulsante alla
Barra di accesso rapido collegato alla macro:
Public Sub VaiAPrimoFoglioDiLavoro()
ActiveWorkbook.Worksheets(1).Activate
End Sub
Per esempio da aggiungere alle macro della Cartella di lavoro
PERSONAL.XLS(B).
Bè, in primo luogo grazie per esserti preso l'impegno di scrivermi
questi dettagli, cmq il "problema", ma ripeto è un problema molto
relativo....è quando devi fare:
foglio 15 -- foglio 1 -- foglio 15 -- foglio 1 -- foglio 20 -- foglio 1
-- foglio 20 etc etc....
e ogni volta devi ricercare il foglio 15, certo posso spostare di volta
in volta il foglio 1 vicino al foglio 15 (o 20), mi chiedevo se c'era
un metodo più rapido.
ciao!
=============
Per cortesia, mi sapreste dire se con Excel 2003 è possible bloccare la
linguetta di un foglio di lavoro in modo che rimanga sempre in vista
facendo scorrere le altre linguette?
In sostanza mi servirebbe un analogo del "blocca riquadri", che si può
fare nel singolo foglio, per mantenere sempre di rapido accesso un
intero foglio (pieno di dati di sintesi...) senza doverlo andare a
cercare ogni volta tra decine di linguette.
Spero di essermi spiegato.
=============
Nel modulo ThisWorkbook (vedi di sotto),
prova:
'===========>>
Option Explicit
Private Sub Workbook_SheetActivate( _
ByVal Sh As Object)
Const sStr As String = "Pippo" '<<=== da CAMBIARE
With Application
.ScreenUpdating = False
Me.Sheets(sStr).Move Before:=Sh
.ScreenUpdating = True
End With
End Sub
'<<===========
Sostituisce Pippo con il nome del file
di interesse.
Per utilizzare questa routine di evento,
dal foglio Excel:
Alt-F11 per aprire l'Editor di VBA
Ctrl-R per aprire la finestra Gestione Progetti
Fai un doppio click sull'oggetto ThisWorkbook
Incolla il suddetto codice
Alt-F11 per tornare in Excel
Salva il file.
---
Regards.
Norman
> Nel modulo ThisWorkbook (vedi di sotto),
> prova:
>
> '===========>>
> Option Explicit
>
> Private Sub Workbook_SheetActivate( _
> ByVal Sh As Object)
> Const sStr As String = "Pippo" '<<=== da CAMBIARE
>
> With Application
> .ScreenUpdating = False
> Me.Sheets(sStr).Move Before:=Sh
> .ScreenUpdating = True
> End With
>
> End Sub
> '<<===========
>
> Sostituisce Pippo con il nome del file
> di interesse.
Grazie!
sembra (quasi) perfetto, il problema è che il foglio "di sintesi" si
sposta perfettamente vicino a quello desiderato però rimane selezionato
e non sono in grado di selezionare altri fogli.
ti cheido scusa se non faccio il debug io ma non conosco il linguaggio.
ps: ovviamente se sbaglio qualcosa io chiedo scusa.
ciao
Private Sub Workbook_SheetActivate( _
ByVal Sh As Object)
Const sStr As String = "Pippo" '<<=== da CAMBIARE
With Application
.ScreenUpdating = False
.EnableEvents = False
Me.Sheets(sStr).Move Before:=Sh
Sh.Select
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
ciao
> > [...]
> >> >> Per cortesia, mi sapreste dire se con Excel 2003 è possible bloccare la
> >> >> linguetta di un foglio di lavoro in modo che rimanga sempre in vista
> >> >> facendo scorrere le altre linguette?
> >> > Non credo, o comunque la momento non mi viene in mente, che esista una
> >> simile
> >> > possibilita'. Che cosa hai in contrario riguardo lo spostare tale Foglio
> >> di
> >> > lavoro alla prima posizione? In modo che per trovarlo sia sufficiente un
> >> clic
> >> > sul primo dei quatto pulsanti:
> >> > |< < > >|Foglio 15/Foglio16/...
> >> ciao, il metodo che suggerisci è quello che uso...è però piuttosto
> >> scomodo quando ad esempio, con 30 fogli di lavoro, devi passare spesso
> >> dal numero 15 al primo, poi dal 21 al primo e così via, per carità
> >> niente di tremendo ma speravo ci fosse il modo di far ciò che avevo
> >> chiesto, non mi sembrava una feature così "esotica" :-)
> > Ho capito... e non ho capito. Fossero anche mille, i fogli, sempre di 2 clic
> > 2 si tratterebbe: il primo sul pulsante |< e il secondo sulla linguetta. Meno
> > di due clic c'e' solo un clic: aggiungi un pulsante alla Barra di accesso
> > rapido collegato alla macro:
> > Public Sub VaiAPrimoFoglioDiLavoro()
> > ActiveWorkbook.Worksheets(1).Activate
> > End Sub
> > Per esempio da aggiungere alle macro della Cartella di lavoro
> > PERSONAL.XLS(B).
> Bè, in primo luogo grazie per esserti preso l'impegno di scrivermi
> questi dettagli, cmq il "problema", ma ripeto è un problema molto
> relativo....è quando devi fare:
> foglio 15 -- foglio 1 -- foglio 15 -- foglio 1 -- foglio 20 -- foglio 1
> -- foglio 20 etc etc....
> e ogni volta devi ricercare il foglio 15, certo posso spostare di volta
> in volta il foglio 1 vicino al foglio 15 (o 20), mi chiedevo se c'era
> un metodo più rapido.
Ciao JeanCK.
Ok! Stavolta credo di aver capito. Il modo "naturale" e' aprire una
nuova finestra:
Finestra > Nuova fienstra
quindi passare da una finestra in cui per esempio e' attivo "Foglio1"
all'altra in cui e' attivo sempre per esempio "Foglio15" con:
Finestra > <NomeCartella>:1
Finestra > <NomeCartella>:2
-oppure-
Ctrl+F6
=============
> sembra (quasi) perfetto, il problema è che il foglio "di sintesi" si
> sposta perfettamente vicino a quello desiderato però rimane selezionato e
> non sono in grado di selezionare altri fogli.
> ti cheido scusa se non faccio il debug io ma non conosco il linguaggio.
> ps: ovviamente se sbaglio qualcosa io chiedo scusa.
End Sub
=============
Come indicato da Casanmaner, il codice
deve selezionare il foglio gia' selezionato
dall'utente, perche' lo spostamento del
foglio Pippo (dal codice) seleziona il foglio
Pippo; poi, per evitare che la riselezione del
foglio riavvvia il codice di evento, e'
necessario dissativare gli eventi (prima di
spostare il foglio Pippo) e, successivamente,
riattivare gli eventi.
Comunque, per anche gestire la possibilita'
della selezione di piu fogli, suggirirei la seguente
adattamento della versione del codice suggerito
da Casanmaner:
'===========>>
Option Explicit
Private Sub Workbook_SheetActivate( _
ByVal Sh As Object)
Dim mySheets As Sheets
Const sStr As String _
= "Pippo" '<<=== da CAMBIARE
Set mySheets = Me.Windows(1).SelectedSheets
If Not Sh.Name = sStr Then
With Application
.ScreenUpdating = False
.EnableEvents = False
Me.Sheets(sStr).Move Before:=Sh
mySheets.Select
Sh.Activate
.EnableEvents = True
.ScreenUpdating = True
End With
End If
End Sub
''<<===========
---
Regards.
Norman
Nella mia ultima routine, cancellate
l'istruzionne:
Sh.Activate
---
Regards.
Norman
Ora mi sembra perfetta e fa proprio ciò che speravo.
Davvero grazie per la gentilezza nello scrivermi il codice.
Ciao.
> Il modo "naturale" e' aprire una nuova finestra:
>
> Finestra > Nuova fienstra
>
> quindi passare da una finestra in cui per esempio e' attivo "Foglio1"
> all'altra in cui e' attivo sempre per esempio "Foglio15" con:
>
> Finestra > <NomeCartella>:1
>
> Finestra > <NomeCartella>:2
>
> -oppure-
>
> Ctrl+F6
Grazie anche per questo suggerimento, tutti molto gentili in questo NG.
Saluti.
ciao
Mimmo
=============
degli add-on che tra l'altro davano un menu a tendina per lo
scorrimento dei fogli o un foglio index che puntava a tutti gli altri.
forse domani dall'uffico posso darti dei rif più precisi
=============
Credo che ti riferisci all'addin:
UF0004 - Worksheet Navigator Toolbar
http://www.contextures.com/NavToolbar.zip
Questo componente aggiuntivo crea
una barra degli strumenti flottante.
La barra mostra un elenco ordinato
degli fogli; l'utente puo sezionare un
foglio con un click del mouse.
---
Regards.
Norman
ciao
Mimmo.
Questo Add-In permette la selezione
di qualsiasi foglio, oppure la selezione
del foglio precedentamente selezionato.
Si pottrebbe ottenere una funzionalita'
simile cosi':
passare da 1 foglio all'altro
http://tinyurl.com/4he4qv
Tuttavia, non credo che questo risponde
alla esigenza enunciata da Jean di sempre
tenere un dato foglio accanto al foglio attivo.
---
Regards.
Norman
[...]
> esigenza enunciata da Jean di sempre
> tenere un dato foglio accanto al foglio attivo.
Ciao Norman.
Non mi pareva che l'esigenza di Jean fosse quella di avere un foglio
*accanto* a un altro quanto piuttosto quella di passare dal foglio
attivo ad un ben preciso foglio, e sempre quello. L'esempio che faceva
era:
foglio 15 - foglio 1 - foglio 15 - foglio 1 - foglio 20 - foglio 1 -
foglio 20 etc etc....
Tale esempio non implica il concetto di vicinanza fra due fogli espresso
da "accanto".
=============
Non mi pareva che l'esigenza di Jean fosse quella di avere un foglio
*accanto* a un altro quanto piuttosto quella di passare dal foglio
attivo ad un ben preciso foglio, e sempre quello. L'esempio che faceva
era:
foglio 15 - foglio 1 - foglio 15 - foglio 1 - foglio 20 - foglio 1 -
foglio 20 etc etc....
Tale esempio non implica il concetto di vicinanza fra due fogli espresso
da "accanto".
=============
Proprio per farsi che si possa
"passare dal foglio attivo ad un
ben preciso foglio", la mia soluzione
era di spostare il foglio precisato
sempre vicino (addirritura accanto)
al foglio attivo.
Io volevo rispondere a la domanda:
============
In sostanza mi servirebbe un analogo del "blocca riquadri", che si può
fare nel singolo foglio, per mantenere sempre di rapido accesso un
intero foglio (pieno di dati di sintesi...) senza doverlo andare a
cercare ogni volta tra decine di linguette.
============
Noto anche che Jean ha risposto:
============
Ora mi sembra perfetta e fa proprio ciò che speravo.
============
Non affermo, pero', che l'add-in
suggerito da Mimmo, oppure
il codice segnalato da me, non
possano servire a Jean ma io ho
interpretato la domanda in modo
diverso.
Forse Jean potrbb chiarire questo
punto.
---
Regards.
Norman
"Maurizio Borrelli"
Ciao Norman.
Col codice che hai proposto hai fornito una soluzione al problema e non
e' la soluzione che io discuto, quanto la tua successiva riformulazione
del problema nella quale hai introdotto il non richiesto concetto di
"vicinanza". Cioe' la "vicinanza" non e' un requisito della richiesta ma
e' un mezzo per ottenere la soluzione e come tale non fa parte
dell'enunciazione del problema.
=============
Col codice che hai proposto hai fornito una soluzione al problema e non
e' la soluzione che io discuto, quanto la tua successiva riformulazione
del problema nella quale hai introdotto il non richiesto concetto di
"vicinanza". Cioe' la "vicinanza" non e' un requisito della richiesta ma
e' un mezzo per ottenere la soluzione e come tale non fa parte
dell'enunciazione del problema.
=============
Per me il concetto di 'vincinanza' e
stata introdotta da Jean:
=============
In sostanza mi servirebbe un analogo del "blocca riquadri", che si può
fare nel singolo foglio
[...]
=============
Comunque, in assenza di tal concetto,
ci sarebbero altre soluzioni, tra quali
sia l'add-in, suggerito da Mimmo, che
il mio altro codice.
Io capisco benissimo il tuo punto di
vista, il quale potrebbe essere quello
giusto: chiaramente abbiamo interpretato
la domanda diversamente e, forse,
soltanto Jean potrebbe illuminarci
ulteriormente al riguardo dela validita'
del concetto di 'vincinanza'.
---
Regards.
Norman
> Io capisco benissimo il tuo punto di
> vista, il quale potrebbe essere quello
> giusto: chiaramente abbiamo interpretato
> la domanda diversamente e, forse,
> soltanto Jean potrebbe illuminarci
> ulteriormente al riguardo dela validita'
> del concetto di 'vincinanza'.
Ciao Norman.
Ma no... Sono giusti entrambi i punti di vista, dato che la famosa
vicinanza non era stata espressamente richiesta. Se invece la introduci
arbitrariamente nell'enunciato del problema ecco che fatalmente uno dei
due punti di vista, guardacaso il mio, :-) non e' piu' soluzione al
Salve a tutti.
Rispondo solo ora, me ne scuso.
La mia esigenza era di poter passare col minimo di tempo da un foglio
"base" ad altri. Avevo introdotto il concetto di "blocca riquadri" in
quanto esso appariva -a me-, come una possible soluzione.
Questa possible soluzione è perfettamente implementata nel codice di
Norman che, dunque, risolve in pieno il mio problema.
Devo cmq dire che anche l'altra soluzione proposta, alla quale io non
avevo pensato, ha un effetto di fatto simile.
In conclusione quindi ringrazio di nuovo tutti per aver avuto così
interesse per questo "problema", spero che magari le soluzioni proposte
serviranno anche ad altri.
Saluti.
=============
Rispondo solo ora, me ne scuso.
La mia esigenza era di poter passare col minimo di tempo da un foglio
"base" ad altri. Avevo introdotto il concetto di "blocca riquadri" in
quanto esso appariva -a me-, come una possible soluzione.
Questa possible soluzione è perfettamente implementata nel codice di
Norman che, dunque, risolve in pieno il mio problema.
Devo cmq dire che anche l'altra soluzione proposta, alla quale io non
avevo pensato, ha un effetto di fatto simile.
In conclusione quindi ringrazio di nuovo tutti per aver avuto così
interesse per questo "problema", spero che magari le soluzioni proposte
serviranno anche ad altri.
=============
Ti ringrazio per il riscontro chiaro e gentile.
---
Regards.
Norman