Hej har funderingar runt detta spörsmål?? Hej Tack3 textboxar 3 commandbuttons. Effektivisera söknings- och kopieringsfunktion
3 textboxar plus 3 commandbuttons
Har gjort en funktion för att kopiera och klistra in utan högerklick copy and paste till en tredje textbox text3.
Private Sub Command2_Click()
Clipboard.Clear
Clipboard.SetText txtBody.SelText
End Sub
Private Sub Command3_Click()
text3.SelText = Clipboard.GetText()
End Sub
txtBody har en massa text rader där sökningen delvis blåmarkeras:
Kod
Private Sub txtBody_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
If Button = 2 Then
txtBody.Locked = True
End If
End Sub
txtTarget är där sökningen skrivs in:
Kod
Private Sub txtTarget_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
If Button = 2 Then
txtTarget.Locked = False
End If
End Sub
Sökkoden:
' Find the text.
Private Sub cmdFind_Click()
FindText 1
End Sub
Private Sub FindText(ByVal start_at As Integer)
Dim pos As Integer
Dim target As String
target = txtTarget.text
pos = InStr(start_at, txtBody.text, target)
If pos > 0 Then
' We found it.
TargetPosition = pos
txtBody.SelStart = TargetPosition - 1
txtBody.SelLength = Len(target)
txtBody.SetFocus
Else
' We did not find it.
MsgBox "Inga fler hittades."
txtBody.SetFocus
End If
End Sub
Fråga 1.:
Som det nu är vid sökningen blåmarkeras endast del av sökningen i ordet. Exempel texten; "Tips från oss" och jag söker på "från" blåmarkeras endast detta ord. Hur får jag hela textraden att blåmarkeras.
Om det går kodmässigt slipper jag manuellt blåmarkera det sökta objektet för kopiering och klistra in.
Fråga 2.:
När nästa sökord med hela raden ska kopieras och klistras in måste det tidigare tömmas ur text fältet. Har testat en del varianter men inte fått det att funka. ??
Annars var det inget mer.
Mvh
KennethSv: 3 textboxar 3 commandbuttons. Effektivisera söknings- och kopieringsfunktion
Att markera hela textraden kräver att du exempelvis från startpositionen du får fram - söker ut dit du vill markera, det kanske är "." eller något. Så .SelLength måste fyllas med just det resultatet du önskar.
Inte säker om jag förstår dig med tömning, är det en textruta skriver du bara mintextruta.text = "" - men förmodar att det inte är så enkelt. Om du tycker att det borde fungera kan du alltid testa att lägga till kommandot DoEvents samt Me.Refresh - för att se om det blir någon skillnad.Sv: 3 textboxar 3 commandbuttons. Effektivisera söknings- och kopieringsfunktio
Pelle
Ska testa, bör inte va nåt problem.
Mvh
Kenneth