PDA

Visualizza la versione completa : split di un campo di tabella {VB}


samuele_dc
01-07-2002, 18:23
dovrei estrarre il valore di un campo di tabella e eliminare quello che non mi interessa per poi aggiornare il record.Es.
estraggo un campo che contiene questi valori ADD,AFD,AGF
e vorrei che la stringa diventasse ADD,AGF ma non riesco perchè mi da errore.Io procedo così(chiaramente non setto i valori a mano perchè non so quanto valgono ma sono il risultato di una query):

text1.text = "ADD,AFD,AGF"
text2.text = ",AFD"

se io faccio

text1.text = split(text1.text,text2.text)

mi genera errore.Type mismatch.I campi di testo però sono valorizzati correttamente.Non posso splittare usando le variabili?
se avete altri consigli su come poter eseguire un operazione del genere li acceto volentieri.

ladyBlu
01-07-2002, 18:36
la sintassi corretta è: Split(espressione[, delimitatore[, conteggio[, confronto]]]),
dove:
espressione=Espressione stringa contenente sottostringhe e delimitatori. Se espressione è una stringa di lunghezza zero (""),
la funzione Split restituirà una matrice vuota, ovvero una matrice che non contiene alcun elemento o dato.

delimitatore=Facoltativa. Carattere che consente di identificare i limiti della sottostringa.
Se omesso, viene automaticamente utilizzato come delimitatore lo spazio (" "). Se delimitatore è una stringa di lunghezza zero,
verrà restituita una matrice di un solo elemento contenente l'intera stringa espressione.

conteggio=Facoltativa. Numero di sottostringhe da restituire. Il valore -1 indica che vengono restituite tutte le sottostringhe.

confronto=Facoltativa. Valore numerico che specifica il tipo di confronto da utilizzare nella valutazione delle sottostringhe.
I possibili valori sono indicati nella sezione "Impostazioni".

se ometti qualcuno dei parametri facoltativi devi ricordarti di mettere comunque la virgola, cioè ad esempio se io ometto il delimitatore dovrò scrivere:
Split(espressione,, conteggio, confronto).

ok?

ricordati che la funzione Split restituisce una matrice a una dimensione con base zero contenente il numero di sottostringhe specificato.

:ciauz: :ciauz: :ciauz:

ladyBlu
01-07-2002, 18:52
ehi, ho trovato; scrivi quello che ti posto e vedi se funziona. a me ha funzionato.

Private Sub Command1_Click()
Dim MyString

Text1.Text = "ADD,AFD,AGF"
Text2.Text = ",AFD"

MyString = Split(Text1.Text, Text2.Text)
For i = 0 To UBound(miaVar)
MsgBox MyString(i)
Next i

End Sub

:ciauz:

samuele_dc
01-07-2002, 19:28
grazie sembra sia tutto ok.ciao

ladyBlu
01-07-2002, 19:29
di niente... ciao :ciauz:

Loading