Board logo

標題: 不能將非空白資料移出工作表外 [打印本頁]

作者: oobird    時間: 2010-12-16 09:16     標題: 不能將非空白資料移出工作表外

最近才發現一個不解的問題,如A欄有一欄資料,其中分別有文字、有數字,(文字數字不在同一儲存格),想把數字的儲存格移到B欄。
若無特殊情況,我們會用編輯~到,定位到數字,右鍵插入~儲存格右移。通常很快就能完成的。目前我的機子在一千列的情形可以完成,資料在兩千列時就會出錯,報"EXCEL不能將非空白資料移出工作表外"。只能改用其他較麻煩的步驟操作!大家有時間的話可否測試是否有此現象?或自己的機子在大於多少列會出錯?
作者: HUNGCHILIN    時間: 2010-12-16 17:48

回復 1# oobird


OOBIRD 長輩您好
我剛有測了一下 MS EXCEL 2003版

全選A欄 條件如下
[attach]4120[/attach]
測試結果沒有顯示
不能將非空白資料移出工作表外
可正常操作

不過這句很熟悉,會不會最後一欄有資料
作者: solely    時間: 2010-12-16 19:43

回復 1# oobird
測試到65536都很正常~
除了iv欄有資料外,才會出現....
[attach]4121[/attach]
作者: oobird    時間: 2010-12-16 21:14

我是用2002並且是開新檔案測試的,除了a欄所輸入的,確定沒有其他資料。還重開機測試了多次。
很難理解辦不到的原因, 而且1000列時正常,資料複製到2000列就不行了。如記憶體不足也不應該顯示"不能將非空白資料移出工作表外",這個錯誤視窗通常如樓上所述,在iv欄存在數據或有其他物件如註解時才會出現。
多謝兩位的回覆。
作者: gong    時間: 2010-12-16 22:16

windows home
+officeXP

可以操作到1:1061列
1:1062列則無法進行插入
作者: oobird    時間: 2010-12-17 11:01

感謝測試。你的結果與我的相同,作業系統也一樣。
有沒有office xp的朋友能完成一整欄的?
作者: oobird    時間: 2010-12-24 10:28

本帖最後由 oobird 於 2010-12-24 10:34 編輯

這個問題經2003與2002兩個版本多次測試的結果,如果範圍內不同類型數據(文字與數字)排列不是很混亂,上述方法是可實現的,如混亂多了就出錯。大家不妨這樣測試:
1.位址欄輸入A1:A10000, 按ENTER
2.輸入1,按CTRL+ENTER
3.A1至A3分別輸入A,B,C
4.框選A1:A6,右下角快按兩下左鍵。
如此產生了10000筆不同類型數據。
編輯~到,特殊,常數,只保留數字勾選,確定。
右鍵~插入,選現有儲存格右移。
是否能正確運作?
能正確運作的朋友請說明作業系統及OFFICE版本,
謝謝大家!
這應該屬於是SPECIALCELLS的限制。
作者: Hsieh    時間: 2010-12-24 19:17

回復 7# oobird
經測試以您所說的操作能夠通過,但是,切割更複雜造成區域數增多時就產生錯誤
http://office.microsoft.com/zh-hk/excel-help/HP010073849.aspx
http://tw.myblog.yahoo.com/vincent-excel/article?mid=988&prev=989&l=a&fid=27
由此EXCEL選取範圍限制可知2007、2003是2048個選定區域
超出此限制就會產生錯誤,應該是在這個限制下所造成的
作者: GBKEE    時間: 2010-12-24 19:57

回復 7# oobird
這是我的想法  可能是記憶體的限制  
填滿4列:  依你的方法 A1:A4 填入數字,A5:A8填入文字, 向下填滿一整欄, 選取這欄文字或數字時, 會傳回 [選定範圍太大]的警示
大於填滿4列:  A1:A5 填入數字,A6:A10填入文字, 向下填滿一整欄,  選取這欄文字或數字, 可以 執行 [插入]  選項:現有儲存格右移
可是很慢需時 5分鐘以上
作者: oobird    時間: 2010-12-24 20:10

謝謝,這是個重要的認知。
只是不能明白,照上面操作,並不到2000個選取範圍,我的不能通過而你可以?
所以我只能增加一欄填上序號,然後a欄排序,這樣選取的範圍只有一個,執行就不會有問題,執行完後再依序號排回去!
作者: solely    時間: 2010-12-24 22:01

回復 10# oobird
我測試的結果是這樣..
1.以ABC111的方式輸入,複製至A10000無法正常運作。
2.以ABC111的方式輸入,複製至A65536則顯示選取範圍過大。
3.若是以ABC111的方式輸入至A10000,A10001:A65536輸入1則可以正常運作。
4.若是以ABC111的方式輸入至A10000,A10001:A65536輸入A也可以正常運作。
5.另外若以111ABC111的方式輸入,複製至A65536也能正常運作。
6.或者以ABC111ABC的方式輸入,複製至A65536一樣能正常運作。
5.6兩項輸入方式,若只複製至A10000卻無法正常運作~~
看起來....和記憶體好像沒什麼關聯~~
作者: oobird    時間: 2010-12-24 22:20

樓上厲害啊,新的發現。
有興趣的朋友繼續探討吧!
作者: oobird    時間: 2010-12-26 14:43

綜合以上大家的測試,可以完全確定是excel內部程式的誤判了。
有興趣的朋友可以這樣測試。
開個空白工作表在iu1:iu5輸入a,b,1,2,3
全選iu欄,f5,特殊,常數,只保留數字,確定。
右鍵選插入,選現有儲存格右移,確定!
這樣沒有問題,1,2,3這些數字跑到iv欄了。
按復原回到操作前,在iu6輸入文字,iu7再輸入一個數字。
重做相同操作,這時選中的是兩個區塊的範圍,右鍵插入選儲存格右移時出現錯誤視窗。
由此可証明,不是資料大小問題,而是specialcells選中的筆數問題。
在iu欄測試,整個工作表後面只剩1欄,只能容許1筆選中的範圍右移,這一筆可以是多個儲存格。
第二次的測試時中間有一個文字儲存格,變成兩筆的選取範圍,所以不能通過!
所以前面在a欄測試時是可以容許255筆的選取範圍右移的。也解釋了為什麼有人測試通過,也有人不通過,因為測試的資料結構不同。
解決這個問題的方法是iu65536(不管是哪一欄,最底下的儲存格)輸入任何數據,不要留空。




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)