MyTabFile.find 用于搜索MyTabFile的指定元素,并返回该元素所在单元格的指针信息( .CursoX 与.CursorY)。其指针从指定初始单元格逐个搜索,直至搜索到指定元素或者最后一个单元格。在同一个MyTabFile,如果调用多个find 函数,指针不会重新从 1 开始,而是会从上一个find函数中的指针.CursorX 及 .CursorY  继续执行。

下面参考TableDelete模型用TableA进行展示:

  • 顺序1:Reset>Init>Run deleteC>Run deleteH,结果顺利删除C以及H所在的行,如下:

  • 顺序2:Reset>Init>Run deleteH>Run deleteC,结果find函数返回false,执行else中的debug:

结论,有多个find 函数,指针从上一个find函数中的指针数值开始。上例顺序2中删除H所在行时,指针为8,在搜索C时,由于指针从8开始,因此返回搜索失败,执行else中的语句。

为了避免出现上述问题,可以在每次执行find函数前,将指针赋值为1,如下:

  • 顺序3:Reset>Init>Run deleteH1>Run deleteC1,结果顺利删除C以及H所在的行。

发表评论