你好我想问下关于TXT文本的查找与替换
的有关信息介绍如下:
Option Explicit;定义目标位置变量Private TP As Long ;文本位置Private Function FindText(ByVal txt As TextBox, ByVal czgjz As String, ByVal wz As Long) As Boolean ;查找函数;参数:txt为文本框控件名变量,czgjz为要查找的关键字,wz为开始位置;要查找下一个,只要让参数wz,每次都加一。If Len(txt.Text) wz Then ;start_at参数有没超过范围 MsgBox ;start_at参数超过范围!;, vbOKOnly + vbExclamation, ;警告; Exit FunctionEnd IfDim pos As Integer ;位置pos = InStr(wz, txt.Text, czgjz) ;查找If pos ; 0 Then ;找到了匹配字符串 txt.SelStart = pos - 1 ;找到后,设置选定文本的起点位置 ;选中找到的字符串 txt.SelLenh = Len(czgjz) FindText = True ;找到,返回真 txt.SetFocusElse ;没有找到匹配的字符串 MsgBox ;没有找到!;, vbOKOnly + vbInformation, ;温馨提示; txt.SetFocus FindText = False ;没找到,返回假 Exit FunctionEnd IfEnd FunctionPrivate Sub ReplaceText(ByVal txt As TextBox, ByVal czgjz As String, ByVal thgjz As String, ByVal wz As Long) ;替换文本;参数:txt为文本框控件名变量,czgjz为替换前的关键字,thgjz为替换后的关键字,wz为开始位置If FindText(txt, czgjz, wz) Then ;先判断是否查找到,再来替换 txt.SelText = thgjz ;替换End IfEnd SubPrivate Sub CmdFind_Click() ;查找If ftxt.Text = ;; Then MsgBox ;请输入要查找的字!;, vbOKOnly + vbExclamation, ;警告; Exit SubEnd IfFindText txt, ftxt.Text, 1End SubPrivate Sub CmdReplace_Click() ;替换 If ftxt.Text = ;; Then MsgBox ;请输入要被替换的字!;, vbOKOnly + vbExclamation, ;警告; Exit Sub End If If rtxt.Text = ;; Then MsgBox ;请输入替换后的字!;, vbOKOnly + vbExclamation, ;警告; Exit Sub End If ReplaceText txt, ftxt.Text, rtxt.Text, 1End Sub使用方法:一、查找: FindText( txt, czgjz, wz ) 中,各参数分别为:txt为文本框控件名变量,czgjz为要查找的关键字变量,wz为开始位置变量二、替换:ReplaceText(txt,czgjz, thgjz, wz) 中,各参数分别为:txt为文本框控件名变量,czgjz为替换前的关键字变量,thgjz为替换后的关键字变量,wz为开始位置变量



