Newsgroup: it.comp.lang.visual-basic
Titolo: : Gestione Stringa :

Salve NWG..
Ricevo la seguente stringa da un componente seriale(clikkate il
link..plz)...
http://www.giuseppedanna.com/dati.jpg
Ogni gruppo di cifre delimitato da quel carattere rappresenta un campo di
misura. Se mostro la stringa in una msgbox ho il seguente risultato..
http://www.giuseppedanna.com/dati2.jpg
Presuppongo che quel carattere sia di interruzione di riga..ma da alcune
prova che ho fatto nn mi funziona...
Come posso scomporre questa stringa in tutti i valori?
Come posso fare in modo che questa stringa, copiata in un file di testo,
venga importarta da VB nello stesso modo in cui viene inviata dal componente
seriale.
Grazie 1000 !

 Come posso scomporre questa stringa in tutti i valori?
For n=1 to len(stringa)
    debug.print asc(mid(stringa,n,1)) & "=" & mid(stringa,n,1)
next n
Questo ti consente di vedere i "pesi" decimali dei vari caratteri.
Quando hai scoperto qual è il peso del delimitatore dei campi, usa la Split
con:
vettore_elementi=Split(stringa, Chr(peso_decimale_delimitatore))
in vettore elementi, da 0 a ubound(vettore_elementi), troverai i vari campi
che tratterai come meglio ti accomoda

 Quando hai scoperto qual č il peso del delimitatore dei campi, usa la





 Come lo istanzio il Vettore_Elementi ?
Prova ... a non istanziarlo.
Se proprio vuoi: Dim Vettore() As String

 ..nn va...
Se ti serve per la split, devi dichiarare semplicemente
Dim Vettore as Variant
Bye, G.

seriale.
"Paperino" <non...@lo.dico> ha scritto nel messaggio
news:arr4kv$109q$1...@stargate1.inet.it...


 Private Sub ElaboraStringaDati(ByVal Stringa As Stringa)
... As String

    Dim Vettore() As Variant
Chiaro ?
Bye, G.

 > xchè nn va ?



 Private Sub ElaboraStringaDati(ByVal Stringa As String)
       Dim Vettore As Variant
'oppure
        Dim Vettore() As String


Sottoscrivo, ho appena provato. Da prove precedenti mi sembrava che
funzionasse solo la prima sintassi, e invece funzionano tutte e due... ciň
stende una luce preoccupante su _tutte_ le prove (da me) fatte
precedentemente..
Salutoni
Sergio

 fatte precedentemente..
No, o, meglio, ni: Devo aver letto qualcosa sulle parentesi (), ma non
riesco a trovarlo, forse era su un libro. Allo stato, sinceramente, non
riesco a motivarne le differenze. Anche perchè (nel caso della Split) se si
fa Dim Vettore() As Variant si arrabbia, ma giusto sulla Split, non sulla
Dim. Vabbè che la guida dice che si aspetta una "espressione stringa",
ovvero :
"Qualsiasi espressione la cui valutazione dà come risultato una sequenza di
caratteri contigui. Gli elementi dell'espressione possono includere una
funzione che restituisce una stringa, una stringa letterale, una costante
stringa, una variabile stringa, una Variant stringa, o una funzione che
restituisce una Variant stringa (VarType 8).",
 ma continuo a non capire.

 Dim.
se la differenza che non riesci a motivare è la presenza delle parentesi nel
caso della variabile string o la loro assenza per la variant, per me il
significato è chiaro e coerente: la funzione string restituisce una variant,
sottotipo array di string, quindi può essere assegnata ad una variant (che
prenderà lo stesso tipo) semplice, e non un array di variant (che sarebbe la
variabile dichiarata come dim pippo () as variant). Quello che non capivo
era: se la variant restituita (non dico "ritornata" perchè se j. ci sta
lurkando mi cazzia) è di sottotipo array di stringhe, perchè non riesco ad
assegnarla, appunto, ad un array di stringhe? La risposta era: sergio, sei
un cretino, è possibile assegnarla ad un array di stringhe....
Salutoni
Sergio

 significato è chiaro e coerente: la funzione string restituisce una
variant,
in questa frase la parola "string" è da sostituire con la parola "split"
Scusate per il disturbo... forse è il caso che rilegga i post _prima_ di
spedirli....
Salutoni
Sergio