关于Excel VBA Row函数的一些困惑
Excel中建立了一个Textbox,想依据Textbox输入内容在数据库中查找,如果找到,则将其所在栏的所有内容显示在指定区域。VBA我大概编写如下:DimaAsStr...
Excel中建立了一个Textbox,想依据Textbox输入内容在数据库中查找,如果找到,则将其所在栏的所有内容显示在指定区域。VBA我大概编写如下:
Dim a As String
a = TextBox1.Text
(然后就是定义range,设定查找逻辑)……
问题出在这里。当找到a时:
Sheets("sheet1").Rows(a.row).Copy Sheets("sheet2").Rows(11) 无法运行。
我觉得可能是a的定义问题,可是定义a为range的话,又无法满足 a = TextBox1.Text
请高手指点!!! 展开
Dim a As String
a = TextBox1.Text
(然后就是定义range,设定查找逻辑)……
问题出在这里。当找到a时:
Sheets("sheet1").Rows(a.row).Copy Sheets("sheet2").Rows(11) 无法运行。
我觉得可能是a的定义问题,可是定义a为range的话,又无法满足 a = TextBox1.Text
请高手指点!!! 展开
展开全部
在excel VBA中row是一个对象的属性,并不是VBA函数,比如range("a1").row,得出的结果为1,是指单元格a1这个对象的所在的行是第1行。
rows是VBA中的对象,比如rows("1:3")是指1至3行所有的单元格对象,不过这种对象也被成为对象集合。
学习VBA一定分清对象、属性、方法之间的区别。
VBA对象:现实生活所谓的对象,是真实存在物体。在excel中就指的是:工作簿,工作表,单元格,图表,透视表之类。
VBA属性:指对象所具有的特性,比如单元格的字体、填充颜色、工作表的名称等等 。
VBA方法:实际上就是对对象的操作,它是一种动作,一种行为。比图sheet1.delete 是指删除sheet1工作表,range("a1").copy是指复制a1单元格。
rows是VBA中的对象,比如rows("1:3")是指1至3行所有的单元格对象,不过这种对象也被成为对象集合。
学习VBA一定分清对象、属性、方法之间的区别。
VBA对象:现实生活所谓的对象,是真实存在物体。在excel中就指的是:工作簿,工作表,单元格,图表,透视表之类。
VBA属性:指对象所具有的特性,比如单元格的字体、填充颜色、工作表的名称等等 。
VBA方法:实际上就是对对象的操作,它是一种动作,一种行为。比图sheet1.delete 是指删除sheet1工作表,range("a1").copy是指复制a1单元格。
2011-02-27 · 知道合伙人软件行家
关注
展开全部
你可以先定义b= TextBox1.Text
假设你要在sheet1中查找b,然后定义:
with sheets("sheet1")
set a=.find(b,lookin:=xlvalues)
if not a is nothing then
.Rows(a.row).Copy Sheets("sheet2").Rows(11)
end if
end with
即可.
假设你要在sheet1中查找b,然后定义:
with sheets("sheet1")
set a=.find(b,lookin:=xlvalues)
if not a is nothing then
.Rows(a.row).Copy Sheets("sheet2").Rows(11)
end if
end with
即可.
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先应该查找a
如在A列找TextBox1.Text
dim a as range
set a = Sheets("sheet1").Range("A:A").find(TextBox1.Text)
然后判断一下是否找到。
最后再复制。
如在A列找TextBox1.Text
dim a as range
set a = Sheets("sheet1").Range("A:A").find(TextBox1.Text)
然后判断一下是否找到。
最后再复制。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询