NamedRange.Group(Object, Object, Object, Object) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
當 NamedRange 控制項表示樞紐分析表欄位之資料範圍中的單一儲存格時,Group(Object, Object, Object, Object) 方法會在該欄位中執行以數值或日期為基礎的群組作業。
public object Group (object Start, object End, object By, object Periods);
abstract member Group : obj * obj * obj * obj -> obj
Public Function Group (Optional Start As Object, Optional End As Object, Optional By As Object, Optional Periods As Object) As Object
參數
- Start
- Object
要加入群組的第一個值。 如果省略這個引數或者為 true
,則使用欄位中的第一個值。
- End
- Object
要加入群組的最後一個值。 如果省略這個引數或者為 true
,則使用欄位中的最後一個值。
- By
- Object
如果欄位為數值,則這個引數會指定每個群組的大小。 如果欄位是日期,則此自變數會指定陣列true
中元素 4 且所有其他元素都是 false
時,每個群組中的Periods
天數。 否則,忽略這個引數。 如果省略這個引數,Microsoft Office Excel 會自動選擇預設的群組大小。
- Periods
- Object
指定群組期間之七個布爾值的陣列,如下所示:1 - Seconds2 - Minutes3 - Hours4 - Days5 - Months6 - Quarters7 - Years 如果陣列中的元素為 true
,則會為對應的時間建立群組;如果元素為 false
,則不會建立任何群組。 如果欄位不是日期欄位,則忽略這個引數。
傳回
範例
下列程式代碼範例會在資料透視表區域內建立資料透視表和 NamedRange 。 然後,它會使用 PivotTable、 LocationInTable、 PivotCell、 PivotItem和 PivotField 屬性來顯示數據透視表中 放置 NamedRange 的相關信息。 此範例也會使用 Group 方法來根據 字段中的第一個值執行數值群組。
此範例適用於檔層級自定義。
private void DisplayPivotTableInformation()
{
// Specify values for the PivotTable.
this.Range["A1"].Value2 = "Date";
this.Range["A2"].Value2 = "March 1";
this.Range["A3"].Value2 = "March 8";
this.Range["A4"].Value2 = "March 15";
this.Range["B1"].Value2 = "Customer";
this.Range["B2"].Value2 = "Smith";
this.Range["B3"].Value2 = "Jones";
this.Range["B4"].Value2 = "James";
this.Range["C1"].Value2 = "Sales";
this.Range["C2"].Value2 = "23";
this.Range["C3"].Value2 = "17";
this.Range["C4"].Value2 = "39";
// Create and populate the PivotTable.
Excel.PivotTable table1 = this.PivotTableWizard(
Excel.XlPivotTableSourceType.xlDatabase,
this.Range["A1", "C4"],
this.Range["A10"], "Sales Table", false,
false, true, false, false, false,
Excel.XlOrder.xlDownThenOver);
Excel.PivotField customerField =
(Excel.PivotField)table1.PivotFields("Customer");
customerField.Orientation =
Excel.XlPivotFieldOrientation.xlRowField;
customerField.Position = 1;
Excel.PivotField dateField =
(Excel.PivotField)table1.PivotFields("Date");
dateField.Orientation =
Excel.XlPivotFieldOrientation.xlColumnField;
dateField.Position = 1;
table1.AddDataField(table1.PivotFields("Sales"),
"Sales Summary", Excel.XlConsolidationFunction.xlSum);
// Create a NamedRange in the PivotTable and display the
// location.
Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
this.Controls.AddNamedRange(
this.Range["B11"], "namedRange1");
namedRange1.Select();
MessageBox.Show("The NamedRange is in the PivotTable report '" +
namedRange1.PivotTable.Name + "' at the location '" +
namedRange1.LocationInTable.ToString() + "'.");
MessageBox.Show("The NamedRange has a PivotCell type of: " +
namedRange1.PivotCell.PivotCellType.ToString());
MessageBox.Show("The NamedRange is in the PivotTable field: " +
namedRange1.PivotField.Name);
MessageBox.Show("The NamedRange is in the PivotTable item: " +
namedRange1.PivotItem.Name);
namedRange1.Group(true);
}
Private Sub DisplayPivotTableInformation()
' Specify values for the PivotTable.
Me.Range("A1").Value2 = "Date"
Me.Range("A2").Value2 = "March 1"
Me.Range("A3").Value2 = "March 8"
Me.Range("A4").Value2 = "March 15"
Me.Range("B1").Value2 = "Customer"
Me.Range("B2").Value2 = "Smith"
Me.Range("B3").Value2 = "Jones"
Me.Range("B4").Value2 = "James"
Me.Range("C1").Value2 = "Sales"
Me.Range("C2").Value2 = "23"
Me.Range("C3").Value2 = "17"
Me.Range("C4").Value2 = "39"
' Create and populate the PivotTable.
Dim table1 As Excel.PivotTable = _
Me.PivotTableWizard( _
Excel.XlPivotTableSourceType.xlDatabase, _
Me.Range("A1", "C4"), Me.Range("A10"), "Sales Table", _
False, False, True, False, , , False, False, _
Excel.XlOrder.xlDownThenOver, , , )
Dim customerField As Excel.PivotField = _
CType(table1.PivotFields("Customer"), Excel.PivotField)
customerField.Orientation = _
Excel.XlPivotFieldOrientation.xlRowField
customerField.Position = 1
Dim dateField As Excel.PivotField = _
CType(table1.PivotFields("Date"), Excel.PivotField)
dateField.Orientation = _
Excel.XlPivotFieldOrientation.xlColumnField
dateField.Position = 1
table1.AddDataField(table1.PivotFields("Sales"), _
"Sales Summary", Excel.XlConsolidationFunction.xlSum)
' Create a NamedRange in the PivotTable and display the
' location.
Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange _
= Me.Controls.AddNamedRange(Me.Range("B11"), _
"namedRange1")
namedRange1.Select()
MessageBox.Show("The NamedRange is in the PivotTable report '" & _
namedRange1.PivotTable.Name & "' at the location '" & _
namedRange1.LocationInTable.ToString() & "'.")
MessageBox.Show("The NamedRange has a PivotCell type of: " & _
namedRange1.PivotCell.PivotCellType.ToString())
MessageBox.Show("The NamedRange is in the PivotTable field: " & _
namedRange1.PivotField.Name)
MessageBox.Show("The NamedRange is in the PivotTable item: " & _
namedRange1.PivotItem.Name)
namedRange1.Group(True, , , )
End Sub
備註
控件 NamedRange 必須是數據透視表欄位數據範圍內的單一儲存格。 如果您嘗試將此方法套用至多個數據格,它就會 (失敗,而不會顯示錯誤訊息) 。
選擇性參數
如需選擇性參數的資訊,請參閱 Office 方案中的選擇性參數。