Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Selezione multipla di fogli

677 views
Skip to first unread message

Massimo

unread,
Aug 25, 2004, 4:38:56 AM8/25/04
to
Ciao a tutti,
stò sbattendo la testa su un problemino che sembrava di
facile soluzione e che invece, per me, si stà rivelando
senza uscita.
In una cartella con paarecchi fogli (posso non sapere
quanti sono) se volessi selezionare dal secondo foglio
all'ultimo, clicco sul foglio2 premo SHIFT e clicco
sull'ultiimo; vorrei fare la stessa con VBA, ma non sono
riuscito a combinare nulla.
L'Help mi suggerisce l'uso di Array ma dovrei selezionare
io tutti i fogli divisi dalla virgola, e se i fogli sono
ad esempio 100 mi sembrerebbe una soluzione non molto
pratica.
Mi aiutate a risolvere il problema?
Vi ringrazio.

Tiziano Marmiroli

unread,
Aug 25, 2004, 5:23:25 AM8/25/04
to
Il Wed, 25 Aug 2004 01:38:56 -0700, Massimo ha scritto:

> In una cartella con paarecchi fogli (posso non sapere
> quanti sono) se volessi selezionare dal secondo foglio
> all'ultimo, clicco sul foglio2 premo SHIFT e clicco
> sull'ultiimo; vorrei fare la stessa con VBA, ma non sono
> riuscito a combinare nulla.
> L'Help mi suggerisce l'uso di Array ma dovrei selezionare
> io tutti i fogli divisi dalla virgola, e se i fogli sono
> ad esempio 100 mi sembrerebbe una soluzione non molto
> pratica.
> Mi aiutate a risolvere il problema?

Prendendo spunto dal post
www.google.it/groups?selm=e$RQm2iTE...@TK2MSFTNGP12.phx.gbl
puoi usare qualcosa tipo:

Sub tuttitranne1()
Dim bFirst As Boolean
bFirst = True
For Each sh In ThisWorkbook.Worksheets
If sh.Index >= 2 Then
sh.Select bFirst
bFirst = False
End If
Next
End Sub

--
Tiziano Marmiroli
Microsoft MVP - Office

Massimo

unread,
Aug 25, 2004, 6:52:15 AM8/25/04
to

>-----Messaggio originale---
>.*********************
Grazieeeeeeeeee!!
Non ci sarei mai arrivato senza il tuo aiuto, e mi sembra
anche abbastanza chiaro, ciao e di nuovo grazie.

Maurizio Borrelli

unread,
Aug 25, 2004, 9:44:03 AM8/25/04
to
"Tiziano Marmiroli" <t.mar...@mvps.org> ha scritto nel messaggio
news:dqkoi09bhakij9due...@4ax.com...

> Il Wed, 25 Aug 2004 01:38:56 -0700, Massimo ha scritto:
> > In una cartella con paarecchi fogli (posso non sapere
> > quanti sono) se volessi selezionare dal secondo foglio
> > all'ultimo, clicco sul foglio2 premo SHIFT e clicco
> > sull'ultiimo; vorrei fare la stessa con VBA, ma non sono
> > riuscito a combinare nulla.
> > L'Help mi suggerisce l'uso di Array ma dovrei selezionare
> > io tutti i fogli divisi dalla virgola, e se i fogli sono
> > ad esempio 100 mi sembrerebbe una soluzione non molto
> > pratica.
> Prendendo spunto dal post
> www.google.it/groups?selm=e$RQm2iTE...@TK2MSFTNGP12.phx.gbl
> puoi usare qualcosa tipo:
> Sub tuttitranne1()
> Dim bFirst As Boolean
> bFirst = True
> For Each sh In ThisWorkbook.Worksheets
> If sh.Index >= 2 Then
> sh.Select bFirst
> bFirst = False
> End If
> Next
> End Sub

Ciao, Tiziano.

Prendendo invece spunto dal Registratore di macro propongo la seguente
soluzione che, intendiamoci, non e' migliore della tua, anzi, e' vero
piuttosto il contrario, ma ha, credo, qualche interesse in quanto permette
di notare come il codice prodotto dal registratore di macro possa essere
"piegato" ai nostri fini.

Option Explicit

Sub Macro1()
'
' Macro1 Macro
' Macro registrata il 25/08/2004 da Maurizio Borrelli
'

'
Sheets(Array("Foglio1", "Foglio2", "Foglio3")).Select

End Sub

Sub Macro2()
Dim objXlSh As Object
Dim strArray As String

For Each objXlSh In Sheets
With objXlSh
If Not (.Index = 1) Then
strArray = strArray & "," & objXlSh.Name

End If
End With

Next
Sheets(Split(Mid$(strArray, 2), ",")).Select

Set objXlSh = Nothing

End Sub

--
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
?SPQR(C)
X
--------


0 new messages