中易网

方法‘range’作用于对象‘_Global’时失败

答案:1  悬赏:0  
解决时间 2021-01-06 02:48
方法‘range’作用于对象‘_Global’时失败
最佳答案
首先:对单元格的引用
Range("Ak").Value
要改为这样:
Range("A" & Cstr(k)).Value

Range("A(k + 1)").
改为这样:
Range("A" & Cstr(k + 1)).

同样
Rows("(k+1):(k+1)").Select
改为
Rows(CStr(k + 1) & ":" & CStr(k + 1)).Select追问不知道CStr是什么意思,不过我按你的提示改成

If Range("A" & k).Value = Range("A" & (k + 1)).Value Then
Rows((k + 1) & ":" & (k + 1)).Select

就ok了。(然后就没试验你的那个,O(∩_∩)O~)

现在问题解决了,但我还想知道CStr是什么意思,以及为什么不能像我第一次那样去写?

拜托拜托。追答Cstr()函数,将数字转换成字符
理解:2 --> "2"
Val()函数,将字符(数字字符)转换成数字
理解:"2" --> 2

因为在Excel VBA中,单元格地址用字符表示,比如:单元格A1,要用
Range("A1")来表示
这里A当然是字符,但是这里的1也是字符,
你的代码里,K是数值型变量,因为你赋值为:k = 2,等等,显然它是数值,要用K来表示单元格的地址,就要把K转换成字符,所以用Cstr(K)
在所有高级语言中,字符类型与数值类型,赋值的形式相类似的,例如:
x = 12
y = 36
S = "12"
T = "36"
前两个变量是数值类型,后两个变量是字符类型。
如果你想做数值的加法运算:x + T,就会有问题,但是用:
x + Val(T) 就可以按照数值计算了。
同样,如果执行:Cstr(x) + T,结果为“1236”
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
3.7x+x=23.5怎么解?
张煌言 贻赵廷臣书
有哪位在苏州远去志超科技干过作业员的,里面
饮马泉村地址在什么地方,想过去办事
C++中*p的值是什么意思
明瑞宾馆(楚雄元谋县)地址在什么地方,想过去
必图拳馆和拳天下,还有ET,都是在什么位置啊
怎么通过锻炼拉长手臂
为什么我觉得二战的苏军很野蛮
Win10系统笔记本没有快速启动选项怎么办
关于摆设的句子
对于全幅机来说,35mm定焦和50mm定焦哪一个更
倍益康中频电疗仪zp_100clc的用法
闯行天下出国劳务是不是骗子
甲河都四甲户口简介?
推荐资讯
这部什么电影?
2013元旦 几号放假
铝合金卷材0.3mm厚度的冲压用哪种型号比较好,
我是再婚但要替别人养儿子怎么办
e^x 和 e^-x 谁大?
什么是线束定理?
如何开启360“反勒索服务”
ios10怎么关闭搜索栏
求芭萨提的颜色电影资源
联想笔记本y50c一键恢复步骤
请问Excel中如何将1008替换为0108?
东东助手卸载后留下 BstkDrv.sys 这个文件不
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?