Newsgroup: it.comp.appl.access
Titolo: LEFT MID RIGHT

Salve a tutti
ho un "piccolo" problema.
Da un vecchissimo file testo vorrei estrarre dei dati da salvare in una
nuova tabella.
Il problema
Esempio di due record:
record 1) articolo01 -rosso.£ 100.000-
record 2) rosso.£ 100.000
Quelo che voglio estrarre è appunto "rosso.£ 100.000" indipendentemente dal
fatto che trovasi isolato (come esempio record 2) piuttosto che all'interno
di una descrizione, (come esempio record 1).
Come posso fare per estrarre ?
Io userei un Loop con 2 tabelle , una estraggo l'altra faccio un record add,
ma proprio non mi viene in mente come poter estrarre SOLO quei dati che
racchiudono il simobolo £
Grazie per l'aiuto. Chi volesse rispondere in Email, tolga il NOSPAM

 racchiudono il simobolo £
INSTR
Antonio

 ha scritto nel messaggio
news:JAQ19.21468$n04.6...@twister2.libero.it...


 ???
Dopo il quoting please
Antonio

???
Traduzione: "ho consultato l'help in linea per ciò che concerne la
funzione INSTR ma non ci ho capito un Biso..."
Giusto?
PS: scrivi DOPO il quoting...

 ha scritto nel messaggio
news:nGQ19.22095$lu5.6...@twister1.libero.it...

Ok... dunque con InStr non riesco a capire dall'help.
Infatti cita esempi , come al solito, assurdi e/o che comunque non risolvono
penso il mio caso.
Infatti la stringa che voglio estrarre è a lunghezza variabile, esempio
(rosso £ 100.000 ) oppure (blu £ 50.000). Non devo cercare nè una lunghezza
fissa nè un carattere specifico....
Grazie per l'aiuto

 ha scritto nel messaggio
news:JXQ19.145509$Jj7.3...@news1.tin.it...

Allora: la programmazione non è una cosa magica o intelligente, che possa
decidere da sola cosa fare. Sei tu che devi stabilire un algoritmo per fare
una cosa, come la faresti tu a mano, e quindi la automatizzi.
Se il tuo algoritmo è:
- prendo la stringa (replicabile)
- Cerco il carattere £ (replicabile)
- Vedo che c'è scritto prima e decido a secondo di quello che c'è scritto
cosa prendere (questo non è replicabile, perchè dipende da una discriminante
umana)
se trovi un modo certo per decidere che parte di stringa prendere prima di £
allora si fa altrimenti nisba...
Antonio


eh eh... si questo lo so. Il fatto č che debbo estrarre in questo modo
se i record sono in questo modo:
articolo1 -rosso Ł 100.000- disponibile
art.2 -blu Ł 50.000- indisponibile
č chiaro che voglio estrarre tutto ciň che č racchiuso tra i due segni "-",
quindi identifico si il carattere "Ł" ma la lunghezza di ciň che voglio
estrarre č appunto tutto quanto sta prima di "Ł" fino a "-" e tutto quanto
dopo "Ł" e fino a "-".
Si puň fare ?
Ri-ri grazie

 Si può fare ?
Questo sì, con instr e mid
Con la prima instr trovi l'indice del primo carattere - e con la mid da
quell'indice stacchi tutto quello che viene prima.
A quel punto riapplichi la instr e trovi il secondo - (che in realtà è
l'unico rimasto dello spezzone che hai ottenuto)
Con una left fino all'indice trovato - 1, hai la stringa desidrata!!!
Antonio

 ha scritto nel messaggio
news:DiR19.22319$lu5.6...@twister1.libero.it...

Penso d'aver "comprenduto" il tutto.... vedo se riesco a metterlo in pratica
RI3 grazie

 Penso d'aver "comprenduto" il tutto.... vedo se riesco a metterlo in
pratica
va beh, dai va, c'ho un attimo di tempo.
i = instr(str,"-")
app = mid(str,i)
i = instr(app,"-")
stringa_finale = left(app,i-1)
In realtà si può fare tutto con un unico comando
stringa_finale = left(mid(str,instr(str,"-")),
instr(mid(str,instr(str,"-")),"-")-1)
se ho scritto bene...
Antonio

 ha scritto nel messaggio
news:KxR19.21772$n04.6...@twister2.libero.it...

Ciao
Bhe! ...Ho provto così ma mi da errore:
prezzo = Left(Mid(RSTA!Campo1, InStr(RSTA!Campo1, ";")),
InStr(Mid(RSTA!Campo1, InStr(RSTA!Campo1, ";")), ";") - 1)
perchè?

perchè?
Semplice. Perché non togli le righe inutili del post cui rispondi
(ovvero non fai un buon "quoting").
Tieni presente che il cattivo quoting è notoriamente causa anche di
altre gravi afflizioni, quali impotenza, alopecia, tendenza all'adipe,
alito cattivo, piedi piatti ed una immotivata propensione a
considerare Fisichella un ottimo pilota di F1.

Grazie per l'avviso
Ho giŕ prenotato la casa di cura....ma questo mi conferma e mi conforta, ora
capisco perchč consideravo Rivaldo un ottimo affare alla pari di Cecchi Gori
;)