Newsgroup: it.comp.appl.access
Titolo: Sostituzione valori......

Salve a tutti!
Non riesco a capire come fare per ottenere quanto appresso:
ho necessità di cambiare una parte di testo, esempio, un percorso da 
C:\prova\prova.jpg a d:\prova.
M'interessa solo la parte "C:\prova" da sostituire in modo da ottenere 
"D:\prova\prova.jpg.
Ho cercato nell'help di provare le funzioni TRIM, LTRIM, RTRIM ma sembrano 
non fare al mio caso.
Ho provato anche in una query di aggiornamento ma, purtroppo quando gli 
specifico quale testo cercare e rimpiazzare, in questo, il nuovo percorso, 
ovviamente mi cancella parte restante a destra (prova.jpg).
Qual'è il metodo nella query e/o in una routine?
Spero di essere stato abbastanza chiaro.
Grazie anticipatamente.
Marco. 


prova questa :
Private Sub NomeTuoPulsante_Click()
Dim k
Dim t
Dim d
d = NomeTuaCasellaDiTesto
t = Mid(nomeTuaCasellaDiTesto, 1, 1)
k = Replace(t, "C", "D")
me.NomeTuaCasellaDitesto = k & Right(d, Len(d) - 1)
End Sub
Se la vuoi usare in un query allora crea una funzione:
public function cambialettera(record as string) as string
dim k
dim t
dim d
d = record
t = mid(record, 1,1)
k = replace(t, "c", "d")
cambialettera = k & right(d, len(d) - 1)
end function
nella query la richiami cosi:
select cambialettera(Nomecampo) from tabella
Altrimenti puo aggiornare la tabella da vba in questo modo:
private sub NomePulsante_click()
dim rst as recordset
dim k
dim t
dim d
set rst = currentdb.openrecordset("nometuatabella")
do while not rst.eof
rst.edit
d=rst.fields("NomeCampoDaAggiornare")
t=mid(rst.fields("NomeCampoDaAggiornare"),1,1)
k=replace(t, "c","d")
rst.fields("NomeCampoDaAggiornare") = k & right(d, len(d) - 1)
rst.update
rst.movenext
loop
rst.close
end sub
-- 
Ciao
Geppo 

"geppo" <c...@tin.it.invalid> ha scritto nel messaggio 
news:34pmj.234271$U01.1...@twister1.libero.it...

Grazie, proverò appena possibile.
Marco. 

 End Sub
----Cut-------
mi da errore su  "Replace" stranamente senza posizionarcisi sopra la riga di 
codice e, ovviamente, non succede nulla.
Cosa può essere? forse deve essere dichiarata o cosa?
Grazie dell'attenzione.
Marco. 


Non so perchè ti accade cio', comunque scaricati questo db di prova, magari 
ti aiuta a capire:
http://www.divshare.com/download/3609403-d4a
-- 
Ciao
Geppo 


ho dimenticato di chiederti quale versione di Access utilizzi, perchè la 
funzione replace è presente da access A00 in poi.
-- 
Ciao
Geppo 

geppo wrote:
---cut--

Comunque, siccome si tratta di un solo carattere puoi sostituire la
K = Replace(t, "C", "D")
con
k = "D"
-- 
Ciao
Geppo 

"geppo" <c...@tin.it.invalid> ha scritto nel messaggio 
news:UDMmj.228816$%k.35...@twister2.libero.it...

Infatti, mi hai preceduto di alcuni minuti. Io uso A97.
Grazie, proverò e ti faccio sapere.
Marco. 


oppure fare direttamente cosi:
NomeTuaCasellaDiTesto = "D" & Right(NomeTuaCasellaDiTesto, 
Len(NomeTuaCasellaDiTesto) - 1)
-- 
Ciao
Geppo 

 Geppo
Rilancio:
NomeTuaCasellaDiTesto = "D" & mid(NomeTuaCasellaDiTesto,2)
Ciao.
-- 
Sergio MAZZA 

 ha scritto nel messaggio 
news:fnhkbp$rac$1...@tdi.cu.mi.it...

Ottimo, Sergio!
Grazie anche a Geppo. Funzionano entrambi alla grande.
A questo punto, penso, sarebbe ancora più "professionale" visto che:
devo cambiare il percorso di alcuni files e, per esempio, in formato .jpg.
Penso che una volta specificato tutto quello che c'è prima del ".jpg" fino a 
"\" (a ritroso), si individuerebbe subito il percorso del/i file/s.
Che ne dite? E' difficile? :-))
Grazie dell'attenzione.
Marco.

 Marco.
qui passo la palla a Sergio MAZZA che saluto.
-- 
Ciao
Geppo 

 Geppo
Ma nooo!??
Lasci la mano con cosě?
Ciao.
-- 
Sergio MAZZA 

 Marco.
Direi che la cosa più "professionale" è quella di separare le informazioni: 
Path e nomeDelFile;
Estrai FileName o PathName
http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=166
Oppure con Scripting Runtime Library
File Object
http://msdn2.microsoft.com/en-us/library/1ft05taf(VS.85).aspx
Ciao.
-- 
Sergio MAZZA 

 Lasci la mano con cosě?
Sergio io non faccio mica er mestiere tuo. :-)
Prima de capicce quarcosa.......
-- 
Ciao
Geppo 

 Geppo
Ciao.
-- 
Sergio MAZZA 


Qualcosa che riguarda l'informatica?
dalle risposte che dai, ho capito questo :-)
Se cosi non fosse, ti faccio i miei complimenti;
-- 
Ciao
Geppo 

 Geppo
Ahaaaa... Pensavo che "qualcuno" avesse parlato...
Ciao.
-- 
Sergio MAZZA 


Primo o dopo "qualcuno" se la canta...... :-)
-- 
Ciao
Geppo