Newsgroup: it.comp.lang.visual-basic
Titolo: Indice non incluso nell'intervallo...

Un saluto a tutto il NG.
Questa volta ho un problema che, almeno apparentemente, non sembra avere a
che fare con la logica!
In una Form (VB ver. 6)  ho creato 8 tasti di comando.
Ogni tasto richiama un foglio diverso di Excel, quindi vengono richiamati in
tutto 8 fogli che fanno parte della stessa cartella e quindi di un unico
file Excel.
Ebbene, il settimo tasto appena viene cliccato tira fuori un messaggio:
Errore di Runtime (9)
Indice non compreso nell'intervallo.
Il debug evidenzia la seguente riga:
Set budgetsheet = budget.Sheets("CE")
CE è il nome del foglio excel, ma avrete già capito il codice.
Non capisco cosa significhi, quale indice?
Ho controllato il codice ed è uguale a quello associato agli altri tasti.
Mi sembra tutto normalissimo.
Ho provato a rinominare il foglio, anche se non mi pareva avesse alcun
senso, ma nonostante le mie prove 'cretine' non si è messo a posto nulla.
Mi dite cosa ho combinato e come faccio a correggere il tutto?
Grazie mille
Ciao Rita

Ho provato a rinominare il foglio, 
Si', ma come? Il problema si ripresenta anche se lo chiami "pippo"?
-- 
ciao, hal

 Indice non compreso nell'intervallo.
A me capita (VB6 SP5) spesso e volentieri quando lancio due volte dall'IDE
un form con molti controlli e molti di questi con Index (e mi segnala una
riga che fa riferimento a uno di questi, non sempre la stessa).
E' sufficiente interrompere, anche senza uscire e rilanciare l'esecuzione,
come se fosse la prima volta. Fortunatamente il problema (il mio, intendo)
non si verifica _mai_ eseguendo l'EXE.

 Uhm, non sara' mica che "CE" venga preso per un numero esadecimale?
e "XP "allora ? un numero romano ? :P

 ha scritto nel messaggio
news:vurlruobbp7qo656p...@4ax.com...

Sì anche se lo rinomino 'Conto Economico' il problema rimane.
Grazie
Ciao Rita


Non capisco la proprietà INDEX.
Cosa vuoi dire?
Scusami ma io ne so veramente poco di VB.
Ciao grazie
Rita

> >CE è il nome del foglio excel, ma avrete già capito il codice.
Ho fatto una prova ed ho rilevato che l'errore 9 viene
sollevato anche quando il foglio non esiste. Quindi delle due l'una:
1. Il foglio con il nome "CE" e' previsto ma non ancora caricato;
2. Il foglio ha un nome diverso (magari "CE ", con uno spazio
   inserito accidentalmente.
Facci sapere ;-)
-- 
hth, hal

 hth, hal
Grazie innanzitutto per l'interessamento.
Dico subito che il foglio esiste ed č scritto esattamente cosě come l'ho
scritto io, non ci sono spazi e non c'č nulla.
Ho infatti giŕ fatto questi controlli, ma niente di ciň.
Grazie ancora
Ciao Rita

Ho infatti giŕ fatto questi controlli, ma niente di ciň.
Tanto per essere sicuri, hai provato a verificare facendo
un loop sui fogli aperti appena prima di assegnare la variabile?
Ad esempio:
<codice>
foreach foglio in budget.sheets
	MsgBox 
foglio.name
     <--- qui verifichi i nomi dei 
					fogli caricati
next foglio
Set budgetsheet = budget.Sheets("CE")
</codice>
Ulteriore test:
<codice>
for i = 1 to budget.sheets.count
	if budget.sheets(i).name = "CE" then
		msgbox "trovato!"
		Set budgetsheet = budget.Sheets("CE")
		exit for
	next i
next i
</codice>
Se compare la msgbox allora e' proprio un mistero :-(
-- 
ciao, hal

 ha scritto nel messaggio
news:UTDu9.81168$RO.20...@twister1.libero.it...

Finalmente ho risolto!!!!
Scusatemi, ma effettivamente avevo lasciato un piccolissimo spazio dopo la
scritta CE, non me ne ero accorta, in effetti l'ho rinominato portandomi
avanti sempre uno spazio!
L'occhio non ha colto l'errore.
In ogni modo vi ringrazio per l'aiuto prezioso.
Ora posso andare a dormire!
Buona notte
Grazie
Ciao Rita


 Hal grazie, ti riporto ciò che ho scritto prima e che tu non hai letto.
Finalmente ho risolto!!!!
Scusatemi, ma effettivamente avevo lasciato un piccolissimo spazio dopo la
scritta CE, non me ne ero accorta, in effetti l'ho rinominato portandomi
avanti sempre uno spazio!
L'occhio non ha colto l'errore.
In ogni modo vi ringrazio per l'aiuto prezioso.
Ora posso andare a dormire!Scusatemi per l'impiccio, ma sono una pivella del
VB!
Buona notte
Grazie
Ciao Rita
Grazie ancora
Ciao Rita