要我們使用Excel的時候,經(jīng)常要修改Excel工作表,象插入與隱藏單元格的行或列等操作,是經(jīng)常使用的,而有時會出現(xiàn)“不能將對象移到工作表外”的提示,這是為什么呢?
考試大編輯整理:發(fā)現(xiàn)有兩種情況會發(fā)生類似的提示!
一、在插入行或列的時候出現(xiàn)“不能將對象移到工作表外”的提示。
這是因為在工作表的最后一列(2003以下版為第IV(256)列,2007版為第XFD(16384)列,下同),或最后一行(2003以下版為65536行,2007版為1048576行)有數(shù)據(jù),或插入的數(shù)據(jù)使原有的數(shù)據(jù)超出工作表行或列的限制時,就會出現(xiàn)“不能將對象移到工作表外”的提示了。
解決的方法就是刪除不需要的行或列,或改變數(shù)據(jù)的排列格式。
二、在隱藏行或列時出現(xiàn)“不能將對象移到工作表外”的提示。
會出現(xiàn)這種提示基本都是以對象有關(guān),比如有批注或者插入圖形或文本框等,在隱藏行或列時,使對象的右側(cè)或底部超出工作表的范圍,這時就會出現(xiàn)“不能將對象移到工作表外”的提示。
解決方法1:將對象的位置屬性更改為“位置隨單元格而變”,大小可以設(shè)定為固定或也隨單元格改變。
1. 如果對象是一個單元格批注,請選擇包含該批注的單元格。右鍵單擊該單元格,然后單擊“顯示批注”或“顯示/隱藏批注”。這樣即可看到批注。
2. 將光標移至對象的邊緣,直到光標變?yōu)閹в兴膫€黑色小箭頭的白色箭頭光標。單擊以選中該對象。
3. 在 Microsoft Office Excel 2003 及早期版本的 Excel 中,單擊“格式”菜單上的“<對象名稱>”。在此菜單命令中,<對象名稱> 就是該對象的名稱,例如“批注”或“自選圖形”。
在 Microsoft Office Excel 2007 中,單擊“開始”選項卡上“單元格”組中的“格式”。然后單擊“設(shè)置 <對象名稱> 格式”。
4. 在“格式”對話框中,單擊“屬性”選項卡。
5. 單擊“位置隨單元格而變”,然后單擊“確定”。
6. 如果想再次隱藏單元格批注,請右鍵單擊該單元格,然后單擊“隱藏批注”。
解決方法2:就是用VBA來批量完成上面的操作,下面這段宏是將當前活動工作表的所有對象的位置屬性更改為“位置隨單元格而變”。
Sub Excelba()
Dim s As Shape
On Error Resume Next
For Each s In ActiveSheet.Shapes
s.Placement = xlMove
Next
MsgBox "修改完成",
End Sub
考試大編輯整理:發(fā)現(xiàn)有兩種情況會發(fā)生類似的提示!
一、在插入行或列的時候出現(xiàn)“不能將對象移到工作表外”的提示。
這是因為在工作表的最后一列(2003以下版為第IV(256)列,2007版為第XFD(16384)列,下同),或最后一行(2003以下版為65536行,2007版為1048576行)有數(shù)據(jù),或插入的數(shù)據(jù)使原有的數(shù)據(jù)超出工作表行或列的限制時,就會出現(xiàn)“不能將對象移到工作表外”的提示了。
解決的方法就是刪除不需要的行或列,或改變數(shù)據(jù)的排列格式。
二、在隱藏行或列時出現(xiàn)“不能將對象移到工作表外”的提示。
會出現(xiàn)這種提示基本都是以對象有關(guān),比如有批注或者插入圖形或文本框等,在隱藏行或列時,使對象的右側(cè)或底部超出工作表的范圍,這時就會出現(xiàn)“不能將對象移到工作表外”的提示。
解決方法1:將對象的位置屬性更改為“位置隨單元格而變”,大小可以設(shè)定為固定或也隨單元格改變。
1. 如果對象是一個單元格批注,請選擇包含該批注的單元格。右鍵單擊該單元格,然后單擊“顯示批注”或“顯示/隱藏批注”。這樣即可看到批注。
2. 將光標移至對象的邊緣,直到光標變?yōu)閹в兴膫€黑色小箭頭的白色箭頭光標。單擊以選中該對象。
3. 在 Microsoft Office Excel 2003 及早期版本的 Excel 中,單擊“格式”菜單上的“<對象名稱>”。在此菜單命令中,<對象名稱> 就是該對象的名稱,例如“批注”或“自選圖形”。
在 Microsoft Office Excel 2007 中,單擊“開始”選項卡上“單元格”組中的“格式”。然后單擊“設(shè)置 <對象名稱> 格式”。
4. 在“格式”對話框中,單擊“屬性”選項卡。
5. 單擊“位置隨單元格而變”,然后單擊“確定”。
6. 如果想再次隱藏單元格批注,請右鍵單擊該單元格,然后單擊“隱藏批注”。
解決方法2:就是用VBA來批量完成上面的操作,下面這段宏是將當前活動工作表的所有對象的位置屬性更改為“位置隨單元格而變”。
Sub Excelba()
Dim s As Shape
On Error Resume Next
For Each s In ActiveSheet.Shapes
s.Placement = xlMove
Next
MsgBox "修改完成",
End Sub