Hejsan! Hej Tack så jätte-mycket SvenPon.Fråga om Sök och Ersätt
Jag har hittat en kod på internet som ska utföra kommandot "Sök och Ersätt". Koden ser ut så här:
Function sReplace(SearchLine As String, SearchFor As String, ReplaceWith As String)
Dim vSearchLine As String, found As Integer
SearchLine = ActiveForm.rtfDokument.Text
SearchFor = comsökefter.Text
ReplaceWith = comersättmed.Text
found = InStr(SearchLine, SearchFor): vSearchLine = SearchLine
If found <> 0 Then
vSearchLine = ""
If found > 1 Then vSearchLine = Left(SearchLine, found - 1)
vSearchLine = vSearchLine + ReplaceWith
If found + Len(SearchFor) - 1 < Len(SearchLine) Then _
vSearchLine = vSearchLine + Right$(SearchLine, Len(SearchLine) - found - Len(SearchFor) + 1)
End If
sReplace = vSearchLine
End Function
Men nu undrar jag, var ska jag lägga koden? Jag har testat att lägga den i Option Explicit, och sedan i koden på knappen cmdersättalla har jag skrivit sReplace. Fast det funkar inte. Sedan har jag testat i en modul, men då fattar inte VB det heller (när jag har skrivit sReplace i knappens kod alltså). Var ska jag lägga koden? Hur ska jag skriva i knappen kod?
Tacksam för svar!
MvH Dan "DaPe" PerssonSv: Fråga om Sök och Ersätt
Option Explicit
'Så här bör det se ut i princip
'Tre TextBoxar i Ettan en RichTextBox ligger en textmassa som du skall söka i
'i Tvåan ligger det ord eller mening som du söker efter
'i Trean ligger det ord mening som du skall ersätta med
'Döp Boxarna enl nedan .Text
Private Sub Command1_Click()
Dim SearchTxt As String, SearchStr As String
Dim ReplaceWithStr As String
SearchTxt = ActiveForm.rtfDokument.Text
SearchStr = comsökefter.Text
ReplaceWithStr = comersättmed.Text
ActiveForm.rtfDokument.Text = sReplace(SearchTxt, SearchStr, ReplaceWithStr)
End Sub
Function sReplace(ByVal SearchLine As String, _
ByVal SearchFor As String, ByVal ReplaceWith As String) As String
Dim vSearchLine As String, found As Integer
found = InStr(SearchLine, SearchFor): vSearchLine = SearchLine
If found <> 0 Then
vSearchLine = ""
If found > 1 Then vSearchLine = Left(SearchLine, found - 1)
vSearchLine = vSearchLine + ReplaceWith
If found + Len(SearchFor) - 1 < Len(SearchLine) Then _
vSearchLine = vSearchLine + Right$(SearchLine, _
Len(SearchLine) - found - Len(SearchFor) + 1)
End If
sReplace = vSearchLine
End Function
mvh
SvenSv: Fråga om Sök och Ersätt
Med Många Vänliga Hälsningar Dan "DaPe" Persson