cells.find(cellsfind)

http://www.itjxue.com  2023-01-29 03:11  来源:未知  点击次数: 

excel中cells.find VBA程序如何编程。

插入一个模块粘贴以下代码

Sub SS()

Dim MyFile, MyPath As String

Dim rng As Range

istr = ThisWorkbook.Sheets("sheet1").Range("A1").Value

MyPath = "C:\"

arr = Split("456.xls,789.xls", ",")

n = 0

Do

On Error Resume Next

MyFile = arr(n)

Workbooks.Open (MyPath "\" MyFile)

Set rng = Workbooks(MyFile).Sheets("sheet1").UsedRange.Find(istr)

If Not rng Is Nothing Then

ThisWorkbook.Sheets("sheet1").Rows(2).Value = Workbooks(MyFile).Sheets("sheet1").Rows(rng.Row).Value

Workbooks(MyFile).Close

Exit Sub

End If

Workbooks(MyFile).Close

n = n + 1

Loop While n = 1

MsgBox "Nothing"

End Sub

C#中打开了一个EXcel对象,怎样通过cells.find方法来获取表格中存在数据区域的位置?还

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的设置将保存。如果下一次调用时未指定这些参数,将使用保存的设置。设置这些参数将改变“查找”对话框中的设定,而在“查找”对话框中修改相应设定,也将改变忽略这些参数时所使用的保存值。为避免出现麻烦,每次调用本方法时,请显式指定这些参数的值。

参考:

EXCEL VBA的Cells.Find(What:="想查找的数据",如何把想查找的数据用变量表示?

查找的字符是会自动保存的,调用它就行,你的意思是

dim FindData as string

finddata = "查找"

range("A1:A8").find(finddata)

VBA 用Find 寻找关键词所在的行并将此行剪切到其他Sheet中

有几个问题

1、Range("I;I")?这个地方要用?:

2、Range("I:I").Find("天津",?LookIn:=xlValues)??是会报错的

正确的用法是

set?rng=sheet1.Range("I:I")

rng.Find("天津",?LookIn:=xlValues)

或者

在整个表里面查找

sheet1.cells.Find("天津",?LookIn:=xlValues)

3.查找以后要判断有没有找到,?如果没找到也会报错

要加判断语句

If?Not?findcell?Is?Nothing?Then

4、?对哪个表操作就?直接?sheet1.?后面加其他属性就可以了??不需要老用select?,

Sub?测试()

Dim?findcell?As?Range

Dim?fr%

Set?findcell?=?Sheet1.Cells.Find("天津")

If?Not?findcell?Is?Nothing?Then

fr?=?findcell.Row

findcell.EntireRow.Cut?Sheet2.Cells(fr,?1)

findcell.EntireRow.Delete

Else

MsgBox?"没查到相关内容"

End?If

End?Sub

用程序啊vba Cells.Find(What:="1", After:=ActiveCell).Activate 具体怎么操作呢? VBA也在EXCEL里使用?

Cells.Find(What:="1", After:=ActiveCell).Activate

这句的意思是查找包含1的单元格,并跳转到此单元格

Excel使用宏调用单元格对应右边的数值

'1.找到“合计”所在的单元格:

set?Rng=Range("A9:A20").Find("合计")???????'Range前用Workbook、WorkSheet约束,

'比如:?Workbooks(MyFile).Sheets(1).("A9:A20").Find("合计")

'2.合计后面对应的C列单元格可以用Offset得到

Rng.Offset(0,2)

'或Cells(Rng.Row,?3)等方式引用

(责任编辑:IT教学网)

更多

相关windows文章