VBA方法参数的默认值是什么?

时间:2017-02-15 11:22:57

标签: excel vba excel-vba

我对vba很新,不知怎的,我无法解决这个问题。我试图找出vba方法参数的默认值是什么,因为我想缩短我的脚本(而不是一直定义它)。

作为一个例子

Sheets(ComboBox1.Value).Columns(2).Find(What:="Example", _
 LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, _ 
 SearchDirection:=xlNext, MatchCase:=False)

我在子程序中使用了这些相同的参数,并且每次都想省去写出来的麻烦。如果它们是默认值,我可以放弃它们。但我无法找到此方法的默认值是什么。

所以我想出了我自己的

Public Function FindVal(What As Variant, Optional After As Variant, _ 
   Optional LookIn As Variant = xlValues, Optional LookAt As Variant = _     
   xlPart, Optional SearchOrder As Variant, Optional SearchDirection As _ 
   Variant = xlNext, Optional MatchCase As Boolean = False, Optional _ 
   MatchByte As Boolean, Optional SearchFormat As Variant)
FindVal = Find(What=What, After=After, LookIn=LookIn, LookAt=LookAt, _ 
   SearchOrder=SearchOrder, SearchDirection=SearchDirection, _
   MatchCase=MatchCase, MatchByte=MatchByte, SearchFormat=SearchFormat)
End Function

但我确定这是一种更简单的方法,对吧?

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:4)

MSDN是你的朋友。只需在Google上搜索“Range.Find”。

例如: https://msdn.microsoft.com/en-us/library/office/ff839746.aspx

答案 1 :(得分:4)

Ctrl+I是您需要的快捷方式,如果您想避免每次都访问MSDN。 当您选择Replace并按Ctrl+I时,这就是您所获得的: enter image description here