NamedRange.AdvancedFilter 方法
根據準則範圍,從清單篩選或複製資料。
命名空間: Microsoft.Office.Tools.Excel
組件: Microsoft.Office.Tools.Excel (在 Microsoft.Office.Tools.Excel.dll 中)
語法
'宣告
Function AdvancedFilter ( _
Action As XlFilterAction, _
CriteriaRange As Object, _
CopyToRange As Object, _
Unique As Object _
) As Object
Object AdvancedFilter(
XlFilterAction Action,
Object CriteriaRange,
Object CopyToRange,
Object Unique
)
參數
- Action
型別:Microsoft.Office.Interop.Excel.XlFilterAction
可以是下列其中一個 XlFilterAction 值:
xlFilterCopy
xlFilterInPlace
- CriteriaRange
型別:System.Object
準則範圍。如果省略這個引數,則表示沒有準則。
- CopyToRange
型別:System.Object
如果 Action 為 xlFilterCopy,則為複製列的目的範圍。否則,忽略這個引數。
- Unique
型別:System.Object
true 表示只篩選出唯一的記錄,false 表示篩選出所有符合準則的記錄。預設值是 false。
傳回值
備註
如果初始選取範圍是單一儲存格,則會使用此儲存格的目前區域。
選擇性參數
如需選擇性參數的詳細資訊,請參閱Office 方案中的選擇性參數。
範例
下列程式碼範例在 A1 到 A5 的儲存格範圍中設定整數值,然後使用 AdvancedFilter 方法篩選和複製從 B1 開始的儲存格範圍值。
這是示範文件層級自訂的範例。
Private Sub ActivateAdvancedFilter()
Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange _
= Me.Controls.AddNamedRange(Me.Range("A1", "A5"), _
"namedRange1")
Me.Range("A1").Value2 = 10
Me.Range("A2").Value2 = 10
Me.Range("A3").Value2 = 20
Me.Range("A4").Value2 = 10
Me.Range("A5").Value2 = 30
namedRange1.AdvancedFilter(Excel.XlFilterAction.xlFilterCopy, , _
Me.Range("B1"), True)
End Sub
private void ActivateAdvancedFilter()
{
Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
this.Controls.AddNamedRange(this.Range["A1", "A5"],
"namedRange1");
this.Range["A1", missing].Value2 = 10;
this.Range["A2", missing].Value2 = 10;
this.Range["A3", missing].Value2 = 20;
this.Range["A4", missing].Value2 = 10;
this.Range["A5", missing].Value2 = 30;
namedRange1.AdvancedFilter(Excel.XlFilterAction.xlFilterCopy,
missing, this.Range["B1", missing], true);
}
.NET Framework 安全性
- 完全信任立即呼叫者。這個成員無法供部分信任的程式碼使用。如需詳細資訊,請參閱從部分受信任程式碼使用程式庫。