ExcelVBA | 005-1 查找特定单元格Find方法(上)

就这一节课我就学了好多天,虽说是抽时间学习的,但消化新知识确实是需要动动脑子啊。

技巧

  1. 在代码区域选中代码,按F1可调出代码的相关帮助 演示
  2. 参数可以直接写,也可以用参数后冒号+等号表示更直观 图片[1]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

代码效果

图片[2]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

VBA代码

Sub 查找上色()
    With Sheet6.cells 'cells表示全表操作
        s = InputBox("请输入编号", , "20211006") '输入框,含默认值
        Set rng = Sheet6.Range("B:B").Find(What:=s, After:=[B2])
        '查找输入框的值
        If Not rng Is Nothing Then '如果不为空就记录首个值
            firstAddress = rng.Address
            Do '循环开始
                rng.Interior.ColorIndex = 6 '上色
                Set rng = .FindNext(rng) '设置查找下一个
            Loop While Not rng Is Nothing And rng.Address <> firstAddress
            '判断是否继续循环
        End If
    End With

rows和columns表示方法

rows(6).select
rows("1:6").select
columns(5).select
columns("B:D").select
rows和columns表示区域在立即窗口的演示
图片[3]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

InPutBox输入框

图片[4]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

在一对话框来中显示提示,等待用户输入正文或按下按钮,并返回包含文本框内容的 String

语法

InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])

图片[5]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

Range.Find在区域中查找特定信息

[mark_a]

Range.Find 方法
在区域中查找特定信息。
语法

表达式.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

表达式 一个代表 Range 对象的变量。

[/mark_a]

 

图片[6]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

FindNext

[mark_e]

Range.FindNext 方法
继续由 Find 方法开始的搜索。查找匹配相同条件的下一个单元格,并返回表示该单元格的 Range 对象。该操作不影响选定内容和活动单元格。
语法

表达式.FindNext(After)

表达式 一个代表 Range 对象的变量。[/mark_e]

FindNext用法帮助手册

图片[7]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

Do……Loop……示例(帮助手册有)

图片[8]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

【立即窗口】测试代码运行结果

[mark_c]注:运行代码时,光标可放到代码任意位置,不一定要放到代码结尾。[/mark_c]

图片[9]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

【本地窗口】查看实时对象值

[mark_a]按F8逐步运行时,将鼠标放到参数上可查看实时值,打开(视图-本地窗口)可查看所有参数值
本地窗口中左边带有+号的,一般为数组或对象,第三列【类型】可查看具体类型[/mark_a]

图片[10]-ExcelVBA | 005-1 查找特定单元格Find方法(上)-习听风雨

「如果文章对您有用,欢迎点赞分享。」
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容