Newsgroup: it.comp.lang.visual-basic
Titolo: Dividere una stringa

Ho caricato i dati forniti da un cliente e li devo inserire nelle mie
tabelle.
Un campo in particolare contiene una stringa che devo dividere
in più campi
VIA G. DI VITTORIO  N.20-ct.B2-mq 96-ct.D2-mq 894
I2
VIA CADUTI SUL LAVORO N.28-ct.D7-mq 1480-ct.B2-mq 463-ct.D5-mq 2493
Come si può notare le stringhe non sono a lunghezza fissa e quindi le
funzioni "classiche" non servono.
Qualcuno riesce a darmi una mano?
Grazie
Tiziana

 e quindi le funzioni "classiche" non servono.
Quali sarebbero le funzioni classiche?
Perche' anche con quelle (Instr? Mid? Right? Left?) si potrebbe fare 
qualcosa.
In ogni caso, parrebbe che sia stato usato il "trattino" - come 
carattere separatore dei campi.
Guarda sulla documentazione la funzione Split.
hth
Lokar
-- 
Sito Comune: 
http://www.it-lang-vb.net/
Manifesto: 
http://www.it-lang-vb.net/docs/Manifesto.txt
Statuto: 
http://www.it-lang-vb.net/docs/Statuto.txt
 

 VIA G. DI VITTORIO  N.20-ct.B2-mq 96-ct.D2-mq 894
Split (Stringa, "-")
Ciao.
Mauro

Grazie dell'aiuto
ho provato a metterlo in un ciclo per estrarre il campo che mi
interessa...ma ho ancora qualche problema!!!
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = CurrentDb()
Set rs = db.OpenRecordset("tblRuoli2003")
Dim str  As String
str = rs!INFORMAZIONI_CARTELLA
'MsgBox "" & rs!INFORMAZIONI_CARTELLA
Dim stringa
Dim output As String
Dim numero
Do Until rs.EOF
numero = TEXT3.Text
stringa = rs!INFORMAZIONI_CARTELLA
output = Split(stringa, "-")(numero - 1)
rs.Edit
rs!I20 = output
rs.Update
Loop
ma non funziona ancora!!!
Grazie

 ha scritto nel messaggio
news:1130175728.6...@z14g2000cwz.googlegroups.com...


 ma non funziona ancora!!!
Per quelli pigri come me occorrerebbe sempre dire dove va in errore e con
quale messaggio.
Comunque vedo un po' di problemini in questo codice, così a occhio:
' mai lasciare le variabili senza tipo!
Dim stringa As String
Dim numero As Long
' un array di string per la Split()
Dim output() As String
' così, tanto per essere sicuri che numero contenga un numero
numero = Val(TEXT3.Text)
output = Split(stringa, "-")
' magari controlliamo anche che numero non sfori
if (numero > 0) and (numero <= Ubound(output) + 1) then
    rs!I20 = output(numero + 1)
end if
Ciao

 Qualcuno riesce a darmi una mano?
emm, sorvolando sulle considerazioni te la faccio semplice :
Instr su " N." e sai dove dividere l'indirizzo
poi sulla prima occorrenza di "-ct" sai dove finisce il numero civico,
ora che rimane ?
solo uno split su "-ct" o su "-" dipende da come vuoi dividere le rimanenti 
coppie di zone catastali e relativi mq cosi' hai uan stringa divisa in :
VIA G. DI VITTORIO
N.20
-ct.B2-mq 96
-ct.D2-mq 894
o
VIA G. DI VITTORIO
N.20
-ct.B2
-mq 96
-ct.D2
-mq 894
-- 
[Gigio2k]
Accorcia i link gratis e in modo semplice :
G2kSnipUrl : 
http://www.g2kweb.it/?3015
---> No alla CONFISCA delle moto : 
http://www.maxkava.com/moto
 <--- 

Gigio2k ha scritto:

grazie dell'aiuto

Tiziana wrote:
cut> grazie dell'aiuto
Il quoting...questo sconosciuto!!!


schhhh, mi fai fare il mollicone in tranquillita' ? :p
Scio scio'...
-- 
-Gigio@work-
G2kSnipUrl : 
http://www.g2kweb.it/?3015
( il servizio accorcia link + Gigioso che conosciate ! )
