題 我怎樣才能“分組”並在Excel中匯總一列?


我試圖弄清楚如何在Excel電子表格中“分組”值。

給出以下示例(這是我在我的餐廳使用的庫存表:)

Sample Spreadsheet

在電子表格的最右側,有一個名為Cost of Goods Sold的列。

我希望能夠為每個類別提供一個總的COGS數字。

這在excel中是否可行?此外,我想在單獨的工作表中進行,以便第一個工作表(圖中所示)不受影響。

有任何想法嗎?

謝謝!


130
2018-03-28 00:52


起源




答案:


您要使用的功能是 數據透視表。一旦您學會瞭如何使用該功能,只需點擊幾下就可以輕鬆完成您想要的任務。


82
2018-03-28 01:15



這太容易了! - Rosdi
這不回答這個問題 - Iron Savior
這個答案中有一些基本的說明 stackoverflow.com/a/15838994/74585 - Matthew Lock


您也可以使用小計功能執行此操作。

  1. 單擊Excel的功能區工具欄中的“數據”選項卡
  2. 單擊排序按鈕並按您的排序 類別 柱
  3. 單擊“小計”按鈕並根據需要填寫對話框,然後單擊“確定”

例如...

在每次變化時:    類別

使用功能:   

添加小計到:    銷售成本


52
2018-03-28 02:38



小計按鈕在哪裡?你能加一個截圖嗎? - Matthew Lock
@MatthewLock看 addintools.com/documents/excel/where-is-subtotal-button.html (和 i.imgur.com/kkSa2AB.png)。請注意,按鈕是 使用表時禁用。 - matt wilkie


我假設您正在尋找像雜貨這樣的帳戶的總COGS,例如第1週。

sumif 是提出這些數據的最簡單方法。從你的照片中取出的例子:

=sumif(d2:d?,"grocery",j2:j?)

我已經放置了問號,因為我看不到整張紙。您可以選擇包含帳戶數據的整個列D. D2到D ?,與每週使用欄J2到J?相同。

該公式將在文本雜貨的D列中查找,如果它存在,它將在列J中添加與D列中具有單詞grocery的單元格相對應的單元格。 (或者你在公式中輸入的任何文字供它查找)


13
2017-07-17 06:20



這是一個非常簡單的解決方案。對於像這樣的許多需求來說,數據透視表太過分了。 - T. Brian Jones


最簡單的方法可能是Excel排序操作,然後是Excel小計操作。

它會產生您所尋求的內容而不會像透視操作那樣改變數據的整體佈局。

排序

  • 點擊 數據 選項卡(或按鍵盤上的Alt-A)
  • 點擊 分類 (或按鍵盤上的S鍵)
  • 單擊彈出窗口主區域中“排序依據”旁邊的下拉箭頭。
  • 選擇“類別”,因為這是您要分組的內容。
  • 單擊確定!

小計

  • 點擊 數據 選項卡(或按鍵盤上的Alt-A)
  • 點擊 小計 圖標(或按鍵盤上的B)
  • 現在您的數據已經排序,閱讀和 填寫小計彈出窗口就像你正在閱讀自然英語
           在每次變化中
              類別(單擊下拉箭頭並選擇此項)
           使用功能
              總和(單擊下拉箭頭並選擇此項)
           添加小計到
              已售出成本(選擇您希望為各個類別添加的列)
  •    Click OK!
    


    5
    2017-07-19 22:03





    在Excel 2013中,將有一個“分組”選項。

    1. 選擇你的桌子。
    2. 轉到“數據”選項卡。
    3. 單擊結構>分組。

    不幸的是,請看下面的截圖,它是德語 - 但圖標將幫助您找到它。

    Gliederung > Gruppieren


    4
    2018-01-24 06:46





    我一直用vba這樣做。我很確定自從office 95'以來我使用了相同的方法,對列放置進行了微小的更改。如果不定義變量,可以使用更少的行完成。如果你需要經過很多行,或者你需要更多的東西來定義你的小組,那麼它可以更快地完成。

    我遇到過“團體”基於2-5個細胞的情況。此示例僅查看一列,但如果有人花時間玩它,則可以輕鬆擴展。

    這假設有3列,您必須按group_values列進行排序。 在運行宏之前,在group_values列中選擇要比較的第一個單元格。

    'group_values,some_number,empty_columnToHoldSubtotals
    '(東西在這裡)
    'cookie 1為空
    '餅乾3空了
    '蛋糕4空了
    '帽子0空
    '帽子3空了
    '...
    '停
    
    子小計()
      '定義兩個字符串和一個小計數器
      Dim thisOne,thatOne As String
      Dim subCount As Double
    
      '培養價值觀
      thisOne = ActiveCell.Value
      thatOne = ActiveCell.Offset(1,0)
      subCount = 0
    
      '設置一個循環,直到達到停止值
      而(ActiveCell.Value <>“停止”)
    
        '將單元格值與其下方的單元格進行比較。
        如果(thisOne = thatOne)那麼
          '如果單元格相等,則將行計數添加到子單元
          subCount = subCount + ActiveCell.Offset(0,1).Value
    
        其他
          '如果單元格不相等,則寫入子單元,並重複小計。
          ActiveCell.Offset(0,2).Value = ActiveCell.Offset(0,1).Value + subCount
          subCount = 0
    
        萬一
    
        '選擇下一個單元格
        ActiveCell.Offset(1,0)。選擇
    
        '將活動單元格的值和它下面的值分配給變量
        thisOne = ActiveCell.Value
        thatOne = ActiveCell.Offset(1,0)
      蜿蜒
    
    結束子
    

    1
    2018-06-19 04:28





    要做到這一點 數據透視表

    1)選擇所有數據(包括列標籤)
    2)插入>數據透視表
    3)將維度拖動到分組列到行或行區域
    4)拖動度量以匯總到值區域

    enter image description here


    0
    2018-04-27 21:31





    1)選擇數據范圍。
    2)將範圍複製到剪貼板。
    3)打開新的數據庫Access。
    4)設計新表或粘貼範圍。
    5)創建視圖,SQL視圖。
    6)創建查詢“SELECT cell,SUM(data)AS Total FROM Table GROUP BY cell”。





    -2
    2018-05-17 17:16





    在Excel 2013中:

    - 點擊數據

    - 點擊小計


    -3
    2017-10-08 10:28