下午好堆棧溢出食客:的Excel 1004運行時錯誤排序表
我和許多人一樣,正試圖排序表時,得到了可怕的1004運行時錯誤......但這裏是起腳... 。當您手動進入開發人員>宏並運行宏時,宏將起作用。
該宏旨在按四個步驟對名爲「Compiled_Data」的表內的數據進行排序:首先按日期最舊到最新排序(數據在列A中),然後按字母順序按承包商名稱排序(數據在列B),然後按客戶名稱(列C中的數據),然後按描述(列D中的數據)。
這裏是宏(通過記錄創建):
Sub Sort_Compiled_Data_Sheet()
Sheets("Compiled_Data").Activate
Range("A3").Select
Range("A4").Activate
ActiveWorkbook.Worksheets("Compiled_Data").ListObjects("Compiled_Data").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Compiled_Data").ListObjects("Compiled_Data").Sort. _
SortFields.Add Key:=Range("Compiled_Data[Date]"), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Compiled_Data").ListObjects("Compiled_Data").Sort. _
SortFields.Add Key:=Range("Compiled_Data[Contractor]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Compiled_Data").ListObjects("Compiled_Data").Sort. _
SortFields.Add Key:=Range("Compiled_Data[Customer]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Compiled_Data").ListObjects("Compiled_Data").Sort. _
SortFields.Add Key:=Range("Compiled_Data[Item]"), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Compiled_Data").ListObjects("Compiled_Data"). _
Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
所以,就像我說的代碼的偉大工程手動運行時。但是,當我使用第二個宏調用宏來運行時,每次都會在「.apply」行上出現可怕的運行時錯誤1004。
我使用主宏使用下面的代碼來運行Sort_Compiled_Data_Sheet宏:
Sub MASTER_MACRO()
Application.Run "Fill_Compiled_Data_Sheet"
Application.Run "Sort_Compiled_Data_Sheet"
Application.Run "Column_Width_All_Sheets"
End Sub
我每次使用MASTER_MACRO運行Sort_Compiled_Data_Sheet宏,我上「適用」運行時錯誤線。
有沒有人知道如何通過這個錯誤,爲什麼它在錯誤的「。應用」排序步驟時被第二個宏調用,但手動運行時工作?
我感謝您的協助。顯然,運行Excel 2007的人,它工作得很好。但在Win7和Win8上運行Excel 2010時,我們在原始宏上收到錯誤。我會嘗試編輯並回複評論。 – CCRaiff
Tim,抱歉,使用您的代碼仍會返回運行時錯誤,並突出顯示.Apply行(第3行代碼)。這已在使用Office 2010的Win7計算機和使用Office 2010的Win8計算機上進行了測試。但是,它在使用Office365的Win8計算機上工作。 – CCRaiff
我在Excel 2010上,Win7 –