2011-07-07 111 views
2

我在我的工作表中放置了AutoFilter。我想使用AutoFilter自身排序數據,而不是通過正常排序。使用VB.net使用「自動過濾器」對Excel中的數據進行排序?

我希望客戶端能夠看到自動篩選器按鈕上的向下箭頭,該箭頭表明行按此鍵排序。

任何想法如何做到這一點?

我有 '紙' 作爲一個對象:

sheet.Range("A2").AutoFilter then ?? 
    Or something else ?? 

請幫幫忙!

(確保爲VB.Net的語法,而不是VB腳本)

我是新手..

回答

3

要篩選範圍A1:A7,嘗試:

Sheet.Range("$A$1:$A$7").AutoFilter(Field:=1, Criteria1:="MyFilter",   Operator:=XlAutoFilterOperator.xlFilterValues) 

確保您正在導入:

Imports Microsoft.Office.Interop.Excel 

編輯:

sheet.AutoFilter.Sort.SortFields.Clear() 
sheet.AutoFilter.Sort.SortFields.Add(Key:=sheet.Range("A1:A7"), SortOn:=XlSortOn.xlSortOnValues, Order:=XlSortOrder.xlAscending, DataOption:=xlSortDataOption.xlSortNormal) 

With sheet.AutoFilter.Sort 
    .Header = XlYesNoGuess.xlYes 
    .MatchCase = False 
    .Orientation = Constants.xlTopToBottom 
    .SortMethod = XlSortMethod.xlPinYin 
    .Apply() 
End With 
+0

不。人,我不想過濾值,我想使用AutoFilter對值進行排序,就像您可以在Excel中使用AutoFilter手動執行的操作一樣。 –

+1

看到我上面的修改。 – Reafidy

+1

代碼是否仍然不能滿足你的需求? – Reafidy

相關問題