2013-03-18 33 views
1

我已经写了一个基本的搜索表单,它搜索文本框的文本,并突出显示搜索项的第一个实例,如果找到,到目前为止我有这一点的代码,但想以某种方式实现一个“下一步”按钮的形式,当点击将转到下一个实例,再次点击,然后转到下一个等任何人都可以帮助我?添加“下一步”按钮来搜索表格

Dim Search As String 
     Dim Find As String 
     Search = TextBox1.Text 
     Find = InStr(Form1.TextBox1.Text, Search) 
     If Find Then 
      Form1.TextBox1.Focus() 
      Form1.TextBox1.SelectionStart = Find - 1 
      Form1.TextBox1.SelectionLength = Len(Search) 
     Else 
      MsgBox("Can't find the text:" & Environment.NewLine & Search) 
     End If 

回答

0

InStr函数有一个参数,它可以让您从一个特定的索引搜索。在这种情况下,它将是找到的单词索引加上单词本身的长度。

Find = InStr(Find + Len(Search), Form1.TextBox1.Text, Search) 

在这种情况下,我们从位置Find + Len(Search)开始。未经测试,但我认为这应该做你想做的事。

可能是过早的优化,但您可以存储搜索词的长度,因此无需在每次按下Next按钮时计算它。

相关问题