Valore o tipo di dati non ammesso. Overflow.

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
ilkappa
Messaggi: 39
Iscritto il: mercoledì 1 febbraio 2017, 12:52

Valore o tipo di dati non ammesso. Overflow.

Messaggio da ilkappa »

Ciao a tutti.
Ho una macro che esegue una ricerca in un foglio, estre un dato e lo utilizza per fare una ricerca su un secondo foglio.
Ora il problema è la differenza di valori tra string e integer perchè per poter fare la ricerca sul secondo foglio, deve passare da un Select Case:

Codice: Seleziona tutto

 Select Case Value
      Case 1 to 19999 
        SheetName="Minuteria"
      Case 20000  to 29999
 	      SheetName="Accessori"
      Case 40000  to 49999
        SheetName="Chiusure"
     Case 50000  to 59999
        SheetName="Orech"
      Case Else
        'MSGBOX "Errore"
      End Select
Il pezzetto di macro che mi crea problemi è il seguente:

Codice: Seleziona tutto

 item=UCase(svc.callFunction("VLOOKUP", Array(OldItem, InRange,2	, True)))
        value=CInt(item)
Item è di tipo string, vorrei tramutarlo in tipo integer. I valori di tipo string che puo assumere Item, sono da 1 a 59999
Se eseguo la macro, ottengo l'errore in oggetto.
Avete un suggeimento?

Ho provato a tramutare la variabile item anche con

Codice: Seleziona tutto

value=svc.callFunction("VALUE", item)
ma ottengo un errore di "Variabile non definita"

Mi sapete aiutare?
Ultima modifica di ilkappa il venerdì 29 giugno 2018, 10:00, modificato 1 volta in totale.
OpenOffice 3.1 su Ubuntu 16.04
ilkappa
Messaggi: 39
Iscritto il: mercoledì 1 febbraio 2017, 12:52

Re: Valore o tipo di dati non ammesso. Overflow.

Messaggio da ilkappa »

Piccolo Upgrade.

Ho notato una differenza: la funzione in se .... funziona!!!

Il range dove esegue la prima ricerca è il suguente

Codice: Seleziona tutto

CENrange="g2:h9900"
mentre il range dove esegue la ricerca ma poi restituisce errore è questo

Codice: Seleziona tutto

ORErange="d2:e9900"

Codice: Seleziona tutto

D	E		G	H
ORE19	50118		CEN19	20141
ORE20	50117		CEN20	20169
ORE21	50119		CEN21	20220
ORE22	50120		CEN22	20180
ORE23	50223		CEN23	20122
ORE24	50090		CEN24	20121
ORE25	50124		CEN25	20167
ORE26	50113		CEN26	20168
ORE27	50114		CEN27	20219
ORE28	50054		CEN28	20119
ORE29	50253		CEN29	20170
ORE30	50093		CEN30	
ORE31	50092		CEN31	20280
ORE32	50116		CEN32	20279
ORE33	50099		CEN33	2350
ORE34	50122		CEN34	20269
ORE35	50128		CEN35	20135
ORE36	50130		CEN36	
ORE37	50194		CEN37	
ORE38	50187		CEN38	
ORE39	50186		CEN39	
ORE40	50101		CEN40	
ORE41	50091		CEN41	20181
ORE42	50162		CEN42	
ORE43	50161		CEN43	
ORE44	50232		CEN44	
ORE45	50233		CEN45	2340
ORE46	50231		CEN46	
ORE47	50185		CEN47	2338
ORE48	50183		CEN48	2352
ORE49	50184		CEN49	
ORE50	50235		CEN50	20124
ORE51	50107		CEN51	20137
ORE52	50094		CEN52	21165
ORE53	50204		CEN53	21166
Perchè se cerco ad esempio CEN45, mi restituisce correttamebte 2340 e senza problemi me lo trasforma in NUBMER in modo da poterlo eseguire nel select case, mentre se cerco ORE47, mi restituisce 50185 ma mi da errore?
OpenOffice 3.1 su Ubuntu 16.04
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: Valore o tipo di dati non ammesso. Overflow.

Messaggio da unlucky83 »

ilkappa ha scritto: mentre se cerco ORE47, mi restituisce 50185 ma mi da errore?
La risposta è semplice https://wiki.openoffice.org/wiki/IT/Doc ... Integer.29
Variabili intere (Integer)
Le variabili intere possono memorizzare un numero intero compreso tra -32768 e 32767.
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Rispondi