作者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://www.ptt.cc/bbs/Office/M.1477591943.A.D7B.html
→ waiter337: 請問有變數或者前後面有沒有其他相關語句 10/28 07:02
→ waiter337: 不小心點到也可能 10/28 07:03
→ waiter337: 我會建議你先在上一行用select 做個測試 比較準 10/28 07:04
→ waiter337: 沒問題在把select 註掉 10/28 07:04
→ waiter337: Range( Cells(11,1),Cells(15,100) ).select 10/28 07:04
→ waiter337: 希望有幫助到 10/28 07:05
→ waiter337: 中斷點就設置在測試這段,在f8測下去 10/28 07:06
→ soyoso: 如果是的話,這為作用儲存格,range.activate 10/28 07:07
→ waiter337: 另外一個方向,或許不是你要的,但或許有相關 10/28 07:14
→ waiter337: 我之前在複製資料的時候,用select copy past這類的語法 10/28 07:14
→ waiter337: 後來我修改成直接= 丟過去,就卡住了,時常也會有沒選到 10/28 07:15
我遇到的問題是直接設定Range 結果因為儲存格空白導致位置不正確
果然看似不重要的地方才是關鍵點
→ waiter337: 的情況,這時後,如果是"範圍的資料",要=到新的位置 10/28 07:16
→ waiter337: 那麼你新的位置的大小,要跟舊的一樣大,所以要找出範圍 10/28 07:16
→ waiter337: 的長寬 10/28 07:16
→ waiter337: 不過我遇到的狀況是比較蠢的,我忘了我貼上的位置在一兩 10/28 07:17
→ 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