excel VBA程序问题:以下函数中Set Cella = Rng.Range("A1") 是什么用意啊?

FunctionCellType(Rng)DimCellaAsRangeSetCella=Rng.Range("A1")SelectCaseTrueCaseIsEmpty... Function CellType(Rng)
Dim Cella As Range
Set Cella = Rng.Range("A1")
Select Case True
Case IsEmpty(Cella)
CellType = "Blank"
Case Application.IsText(Cella)
CellType = "Text"
End Select
End Function

Sub 类型()
Dim a As Variant
a = CellType(Selection)
MsgBox "该类型为:" & a, vbInformation
End Sub
展开
 我来答
lhw19760323
2012-01-07
知道答主
回答量:5
采纳率:0%
帮助的人:8.8万
展开全部
这是一个来判断某个单元格中数据类型的自定义函数。rng为单元格区域,可以为一个单元格,也可以是一块单元格区域,Rng.Range("A1") 是你所选区域的第一个单元格,通过这个自定义函数来判断如果为空,则返回此为blank,如果为文本,即返回text.
百度网友bc5a49610
2011-12-28 · 超过11用户采纳过TA的回答
知道答主
回答量:45
采纳率:0%
帮助的人:18.4万
展开全部
Rng.Range("A1")并不是表的第一个单元格。
Rng 是你的selection, Rng.Range("A1") 是你所选区域的第一个单元格
你的程序存在两个情况:
1> 当只选择一个单元格时
2> 当选择多个单元格时,如果所选区域有的单元格有值,有的没有值,那么就有问题,而Rng.Range("A1"),将selection定位于所选区域的第一个单元格进行判断
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
often722
2011-12-28 · 超过11用户采纳过TA的回答
知道答主
回答量:210
采纳率:100%
帮助的人:81.2万
展开全部
先发第一个问题解决方案: Sub yueliang1() Application.ScreenUpdating = With Rng.Range("A1") .Insert Shift:=xlDown .Range("A1").Offset(
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式