作者ProTrader (没有昵称)
看板Office
标题[算表] ExcelVBA Range设定自己跳掉的问题
时间Fri Oct 28 02:12:21 2016
软体:Excel VBA
版本:2016
例如:
Set Rng = Range( Cells(11,1),Cells(15,100) )
结果选取的区域会自己跳掉 Cells(11,1)会不见
虽然改成下列设定也可达成目标 让Cells(10,1)不见
Set Rng = Range( Cells(10,1),Cells(15,100) )
有人知道Range设定後跳掉的原因吗??
===================================================
相同的语法 在之前的测试是完全正常可用的
後来多次整合其他部分的模组後 才变这样的
Set Rng = Range( Cells(11,1),Cells(15,100) )
===> Set RngX = Range( Cells(12,1),Cells(15,100) )
Set RngY = Range( Cells(11,2),Cells(15,100) )
看图示感觉像分别选取 RngX RngY
所以实际上可用的是RngX
至於相关语法部分
Set RngA = Range( Cells(11,1),Cells(11,100) )
Set RngB = Range( Cells(12,1),Cells(12,100) )
Set RngC = Range( Cells(13,1),Cells(13,100) )
Set RngD = Range( Cells(14,1),Cells(14,100) )
Set RngE = Range( Cells(15,1),Cells(15,100) )
我另外有设定这5个区域 Rng = RngA + RngB + RngC + RngD + RngE
应该不是选位置的问题 因为之前测试的时候完全OK
================================================================
已确认原因 Rng范围正确 但不能空白
range.activate的(1,1)是空白的
若以空白Range直接设定 就会发生跳掉1格的问题
若以有值Range设定 就能正常使用
我也是用Range直接传资料
要用有值的储存格才能设定正确Range
感谢两位
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.142.124.9
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1477591943.A.D7B.html
1F:→ waiter337: 请问有变数或者前後面有没有其他相关语句 10/28 07:02
2F:→ waiter337: 不小心点到也可能 10/28 07:03
3F:→ waiter337: 我会建议你先在上一行用select 做个测试 比较准 10/28 07:04
4F:→ waiter337: 没问题在把select 注掉 10/28 07:04
5F:→ waiter337: Range( Cells(11,1),Cells(15,100) ).select 10/28 07:04
6F:→ waiter337: 希望有帮助到 10/28 07:05
8F:→ waiter337: 中断点就设置在测试这段,在f8测下去 10/28 07:06
9F:→ soyoso: 如果是的话,这为作用储存格,range.activate 10/28 07:07
10F:→ waiter337: 另外一个方向,或许不是你要的,但或许有相关 10/28 07:14
11F:→ waiter337: 我之前在复制资料的时候,用select copy past这类的语法 10/28 07:14
12F:→ waiter337: 後来我修改成直接= 丢过去,就卡住了,时常也会有没选到 10/28 07:15
我遇到的问题是直接设定Range 结果因为储存格空白导致位置不正确
果然看似不重要的地方才是关键点
13F:→ waiter337: 的情况,这时後,如果是"范围的资料",要=到新的位置 10/28 07:16
14F:→ waiter337: 那麽你新的位置的大小,要跟旧的一样大,所以要找出范围 10/28 07:16
15F:→ waiter337: 的长宽 10/28 07:16
16F:→ waiter337: 不过我遇到的状况是比较蠢的,我忘了我贴上的位置在一两 10/28 07:17
17F:→ waiter337: 万列那里,所以以为没贴上资料-,- 10/28 07:17
※ 编辑: ProTrader (220.142.124.9), 10/28/2016 09:40:33
※ 编辑: ProTrader (220.142.124.9), 10/28/2016 11:50:22
※ 编辑: ProTrader (220.142.124.9), 10/28/2016 11:51:06