Oppure

Loading
22/05/11 17:12
Aangelus
Ciao ragazzi sto cercando di eseguire un programmino che mi aggiunga del testo ad una porzione scritta su un'altra text, in pratica il testo viene aggiornato quindi con copia ed incolla ci sarebbero parti duplicate(cosa che non voglio che avvenga) avete consigli su come eseguire questo programmino es
text1
io ti guarderò
illuminata con il neon
delle vetrine
poi ti nutrirò di coca-
cola e di popcorn
------------------------------------
text2
io ti guarderò parte già esistente
illuminata con il neon parte già esistente
delle vetrine parte già esistente
poi ti nutrirò di coca- parte già esistente
cola e di popcorn parte già esistente
dentro ad un cine parte inesistente nella text1 riportarla
ti racconterò le mie parte inesistente nella text1 riportarla

'dovrà aggiungere solo

dentro ad un cine
ti racconterò le mie

c'è un alternativa al metodo instr dato che ho provato, e si verificano in alcuni testi instr = 0 quindi sballa tutto anche se il testo prelevato dalla text1 esiste nella text2 che viene aggiornata ;)

mi scuso per essermi spiegato male abbiamo due text una dove faccio seleziona tutto copia ed incolla nella text2 e l'altra è dove dovrebbe apparire il testo senza ricopiare tutto filtrare la parte mancante e aggiungerla

il codice generato da me è

Private Sub Command1_Click()
conta = Len(Text1.Text)
contatot = Len(Text2.Text)
If Text1.Text = "" Then
Text1.Text = Text2.Text

Else
If conta > 20 Then

porzionetesto = Mid$(Text1.Text, (conta - 20), 20)
iniziocopia = InStr(1, Text2.Text, porzionetesto)
porzionetesto2 = Mid$(Text2.Text, iniziocopia + 20, (contatot - iniziocopia))
Text1.Text = Text1.Text & porzionetesto2
End If
End If

solo che come avevo scritto prima raramente si verifica che instr = 0 e copia parti sbagliate:nono: consigli? Migliorie ?
Ultima modifica effettuata da Aangelus 22/05/11 18:20
aaa
22/05/11 17:37
HeDo
purtroppo non credo che tu ti sia spiegato...
aaa
23/05/11 6:54
gibra
Devi
1. prima copiare il testo esistente dal textbox ad una variabile
2. aggiungere alla variabile il nuovo testo
3. sovrascrivere il contenuto del textbox

Meglio ancora, si può fare una routine che faccia tutto il lavoro:

Private Sub AggiungiTesto(byval sTestoDaAggiungere as string)
Dim sTmp as string
sTmp = Text1.Text
Text1.Text = sTmp & vbcrlf & sTestoDaAggiungere
End Sub

Quando devi aggiungere delle righe di testo a Text1 la usi così:

AggiungiTesto "dentro ad un cine"
AggiungiTesto "ti racconterò le mie"


;)


Ultima modifica effettuata da gibra 23/05/11 7:05
aaa
23/05/11 11:20
gigisoft
Prova così:


Private Sub AggiungiTesto(byval sTestoDaAggiungere as string)
    Text1.Text = Text1.Text & vbcrlf & sTestoDaAggiungere
End Sub


Ciao. :k:
aaa