注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

零售创新,创新那些事儿,SPSS,VBA

零售创新

 
 
 

日志

 
 
关于我

新浪微博,零售创新 研究经理,数据分析师 希望和市场研究和零售业的同事共同进步! 本博客发表的都是免费或试用的资料,如果有版权问题请发邮件wangli12a@163.com联系删除。 spss excel vba blog

网易考拉推荐

转Cells.find函数参数解释  

2013-10-30 16:29:05|  分类: VB和VBA知识 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
 用VBA录制的查找
转Cells.find函数参数解释 - 和平 - 零售创新,创新那些事儿,SPSS,VBA
 

Cells.Find(What:="想查找的数据", After:=ActiveCell, LookIn:=xlValues, LookAt:= xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= False).Activate  

   Find   方法

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

   关于在Visual Basic中使用Find工作表函数的详细内容,请参阅在Visual Basic中使用Microsoft Excel工作表函数。

  语法

   expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte)

   expression   必选。该表达式返回   Range   对象。

   What       Variant类型,必选。要查找的数据。可为字符串或任意Microsoft Excel数据类型。

   After       Variant类型,可选。表示查找过程将从其之后开始进行的单元格。此单元格对应于从用户界面查找时的活动单元格位置。注意After必须是查找区域中的单个单元格。请记住查找是从该单元格之后开始的;直到本方法环绕到此单元格时,才检测其内容。如果未指定本参数,查找将从区域的左上角单元格之后开始。

   LookIn     Variant类型,可选。可为下列XlFindLookIn常量之一:xlFormulas、xlValues或xlComments。

   LookAt     Variant类型,可选。可为下列XlLookAt常量之一:xlPart或xlWhole。

   SearchOrder    Variant类型,可选。可为下列XlSearchOrder常量之一:xlByColumns或xlByRows。

   SearchDirection       Variant类型,可选。可为下列XlSearchDirection常量之一:xlNext或xlPrevious。默认常量为xlNext。

   MatchCase       Variant类型,可选。若指定为True,就进行区分大小写的查找。默认值为False。

   MatchByte       Variant类型,可选。仅在选择或安装了双字节语言支持时使用。若指定为True,就使双字节字符仅匹配双字节字符。若指定为False,则双字节字符可匹配其等价的单字节字符。

  说明

   每次调用本方法后,参数LookIn、LookAt、SearchOrder和MatchByte的设置将保存。如果下一次调用时未指定这些参数,将使用保存的设置。设置这些参数将改变“查找”对话框中的设定,而在“查找”对话框中修改相应设定,也将改变忽略这些参数时所使用的保存值。为避免出现麻烦,每次调用本方法时,请显式指定这些参数的值。


如可能请再解释一下下面的语句:
On Error Resume Next
WorkRange.Find(What:=MaxVal, _
After:=WorkRange.Range("A1"), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:=False).Select
谢谢

vba常量:
LookIn:=xlValues,按值查找
LookAt:=xlWhole,全部匹配,xlPart部分匹配
SearchOrder:=xlByRows,按行查找
SearchDirection:=xlNext,查找方向,向下查找
提问者评价
谢谢,很直接



参考程序 

Option Explicit
Sub l()
    Dim r As Range
    Set r = Sheet1.Rows(6).Find(Sheet2.[b1], LookAt:=xlWhole)
    If Not r Is Nothing Then Exit Sub
    Dim cnn As Object
    Dim sql As String
    Dim rng As Range
    Set cnn = CreateObject("ADODB.Connection")
    Set rng = Sheet1.[z6].End(1).Offset(, 1)
    rng.Value = Sheet2.[b1]
    cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties='Excel 8.0;hdr=no;';Data Source=" & ThisWorkbook.FullName
    sql = "select b.f4 from [统计分析表$a7:c60000] a left join [待导入$a3:d60000] b on a.f2=b.f2 and a.f3=b.f3"
    rng(2, 1).CopyFromRecordset cnn.Execute(sql)
    cnn.Close
End Sub

Option Explicit
Sub l()
    Dim r As Range
    Set r = Sheet1.Rows(6).Find(Sheet2.[b1], LookAt:=xlWhole)
    If Not r Is Nothing Then MsgBox "有" Else MsgBox "无"
End Sub



Sub a()
Dim str As String
str = "王"
With Worksheets("sheet1").Range("C1:C14")
Set c = .Find(What:=str, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True)

MsgBox c

End With

End Sub

  评论这张
 
阅读(708)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017