转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件使用 >> 办公软件 >> 正文
Range结合Find方法的VBA实例         ★★★★

Range结合Find方法的VBA实例

作者:闵涛 文章来源:闵涛的学习笔记 点击数:4790 更新时间:2010/6/21 21:56:47

  一、find方法介绍

  find方法,在区域中查找特定信息,并返回 Range 对象,该对象代表用于查找信息的第一个单元格。如果未发现匹配单元格,就返回 Nothing。本方法不影响选定区域或活动单元格。

  方法描述:Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte,SerchFormat)

  参数介绍

  expression      必需。该表达式返回一个 Range 对象。
  What      Variant 类型,必需。要搜索的数据。可为字符串或任意 Microsoft Excel 数据类型。
  After      Variant 类型,可选。表示搜索过程将从其之后开始进行的单元格。此单元格对应于从用户界面搜索时的活动单元格位置。值得注意的是,After 必须是区域中的单个单元格。请记住搜索是从该单元格之后   开始的;直到本方法绕回到指定的单元格时,才对其进行搜索。如果未指定本参数,搜索将从区域的左上角单元格之后开始。
  LookIn      Variant 类型,可选。信息类型。
  LookAt      Variant 类型,可选。可为以下 XlLookAt 常量之一:xlWhole 或 xlPart。
  SearchOrder      Variant 类型,可选。可为以下 XlSearchOrder 常量之一:xlByRows 或 xlByColumns。
  SearchDirection      XlSearchDirection 类型,可选。搜索的方向。
  XlSearchDirection 可为以下 XlSearchDirection 常量之一。
  xlNext 默认值
  xlPrevious
  MatchCase      Variant 类型,可选。若为 True,则进行区分大小写的查找。默认值为 False。
  MatchByte      Variant 类型,可选。仅在选择或安装了双字节语言支持时使用。若为 True,则双字节字符仅匹配双字节字符。若为 False,则双字节字符可匹配其等价的单字节字符。
  SearchFormat      Variant 类型,可选。搜索的格式。

  二、补充说明

  每次使用本方法后,参数 LookIn、LookAt、SearchOrder 和 MatchByte 的设置将保存。如果下次调用本方法时不指定这些参数的值,就使用保存的值。设置这些参数将更改“查找和替换”对话框中的设置,如果您忽略参数,更改“查找和替换”对话框中的设置将更改使用的保存值。若要避免这种问题的出现,每次使用该方法时请明确设置这些参数。

  可以使用 FindNext 和 FindPrevious 方法重复搜索。

  当搜索到指定的搜索区域的末尾时,本方法将绕回到区域的开始继续搜索。发生绕转后,若要停止搜索,请保存第一个找到的单元格地址,然后依据该保存地址测试每个后续查找到的单元格地址。

  若要进行更为复杂的模式匹配查找,请用 For Each...Next 语句和 Like 运算符。例如,下列代码在单元格区域 A1:C5 中搜索字体名称以“Cour”开始的单元格。当 Microsoft Excel 找到匹配单元格以后,就将其字体改为“Times New Roman”。

  For Each c In [A1:C5]
      If c.Font.Name Like "Cour*" Then
          c.Font.Name = "Times New Roman"
      End If
  Next

  三、应用代码例子

  本示例在工作表的单元格区域 A1:A500 中查找包含值 2 的所有单元格,并将这些单元格的值更改为5。

  With Worksheets(1).Range("a1:a500")
      Set c = .Find(2, lookin:=xlValues)
      If Not c Is Nothing Then
          firstAddress = c.Address
          Do
              c.Value = 5
              Set c = .FindNext(c)
          Loop While Not c Is Nothing And c.Address <> firstAddress
      End If
  End With


[Web开发]使用dropdownlist的SelectedIndexChanged事件实现…  [Web开发]在C#中如何对Excel单元格设置背景色以及对Range设…
[办公软件]EXCEL之Range,cells选择单元格的用法  [办公软件]ActiveCell和Range对象属性介绍
[办公软件]通过VBA中的Union合并多个Range选择区域  [办公软件]Word编程之WindowActivate、DocumentOpen和Docume…
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · 办公软件  · 系统软件
    · 常用软件  · 聊天工具
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    An error occurred on the server when processing the URL. Please contact the system administrator.

    If you are the system administrator please click here to find out more about this error.

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao 信息产业部ICP备案号:鄂ICP备11006601号

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台