VB求助啊急急急求
Dim k As Integer
Dim n As Integer
n = Len(Text1.Text) '将text1中字符串的长度放入n
k = 1
Do
a =_________'将text1是否在text3内出现的结果放入a中
If _______ Then '如果出现
Text3.SelStart = a - 1
Text3.SelLength = Len(Text1.Text)
Text3.SelText =_______
If Option1.Value = True Then '选择Optiion1
Exit For '退出循环
End If
do______ '重新设置开始查找位置k
End If
Loop Until a = 0 '直到a=0时循环结束 展开
If Option1.Value = True Then '选择Optiion1
Exit For '退出循环
End If
do______ '重新设置开始查找位置k
End If
这个题就错了,EXIT FOR 上面根本就没有FOR i=0 to XXX
上面已经有DO了,下面又有一个DO
无解
按题要求得:
Private Sub Command1_Click()
Dim k As Integer
Dim n As Integer
n = Len(Text1.Text) '将text1中字符串的长度放入n
k = 1
Do
a = InStr(Text3, Text1) '将text1是否在text3内出现的结果放入a中
If a <> 0 Then '如果出现
Text3.SelStart = a - 1
Text3.SelLength = Len(Text1.Text)
Text3.SelText = Text2 '将text1的内容换成text2的内容
If Option1.Value = True Then '选择Optiion1 第一个
Exit Do '退出循环
End If
'Do _________'重新设置开始查找位置k
End If
Loop Until a = 0 '直到a=0时循环结束
End Sub
2024-09-19 广告
if a>0 then
……
Text3.seltext=text2.text '更换为Text2的内容
……
后面的循环逻辑有问题
exit for前面没有for,后面没有Next
第二个do没有loop
我给你改了一下,你看看
Private Sub Command1_Click()
Dim k As Integer
Dim n As Integer
n = Len(Text1.Text) '将text1中字符串的长度放入n
k = 1
a=0
Do
a =instr(a+1, text3.text, text1.text)'将text1是否在text3内上次找到位置之后出现的结果放入a中
If a>0 Then '如果出现
Text3.SelStart = a - 1
Text3.SelLength = Len(Text1.Text)
Text3.SelText =text2.text
If Option1.Value = True Then '选择Optiion1
Exit sub '找到第一个,结束
End If
end if
Loop Until a = 0 '直到a=0,就是没有后续了