Come posso "raggruppare per" e sommare una colonna in Excel?


144

Sto cercando di capire come "raggruppare per" i valori in un foglio di calcolo Excel.

Dato il seguente esempio (questo è un foglio di inventario che uso nel mio ristorante :)

Foglio di calcolo di esempio

All'estrema destra del foglio di calcolo è presente una colonna denominata Costo della merce venduta.

Vorrei essere in grado di elaborare una cifra COGS totale per ciascuna categoria.

Questo è possibile in Excel? Inoltre, vorrei farlo in un foglio di lavoro separato in modo che il primo foglio di lavoro (ciò che è raffigurato) non sia interessato.

Qualche idea?

Grazie!

Risposte:



58

Puoi farlo anche con la funzione Subtotale.

  1. Fai clic sulla scheda Dati nella barra degli strumenti della barra multifunzione di Excel
  2. Fai clic sul pulsante Ordina e ordina per colonna di categoria
  3. Fare clic sul pulsante Totale parziale e compilare la finestra di dialogo come appropriato, quindi fare clic su OK

Per esempio...

Ad ogni cambio in: Categoria

Usa la funzione: Somma

Aggiungi il totale parziale a: Costo delle merci vendute


3
Dov'è il pulsante del totale parziale? Potresti aggiungere uno screenshot?
Matthew Lock,


15

Suppongo che tu stia cercando il COGS totale per un account come la drogheria per esempio per la settimana 1.

sumifè il modo più semplice per elaborare quei dati. esempio tratto dalla tua foto:

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

Ho inserito i punti interrogativi poiché non riesco a vedere l'intero foglio. Dovresti selezionare l'intera colonna D in cui hai i dati dell'account. D2 tramite D ?, Lo stesso con la colonna di utilizzo settimanale da J2 a J ?.

La formula cercherà nella colonna D la drogheria di testo, se è presente aggiungerà le celle nella colonna J che corrispondono alle colonne D che contengono la parola drogheria. (o qualunque testo tu abbia inserito nella formula per cercarlo)


Questa è un'ottima soluzione super facile. Le tabelle pivot sono eccessive per molte esigenze come questa.
T. Brian Jones,

5

L'approccio più banale potrebbe essere un'operazione di ordinamento di Excel seguita da un'operazione di subtotale di Excel.

Produce ciò che cerchi senza cambiare l'intero layout dei tuoi dati come farebbe l'operazione Pivot.

Ordinamento

  • Fai clic sulla scheda Dati (o premi Alt-A sulla tastiera)
  • Fai clic su Ordina (o premi S sulla tastiera)
  • Fai clic sulla freccia a discesa accanto a "Ordina per" nell'area principale della finestra popup.
  • Seleziona "Categoria" poiché è quello che vuoi raggruppare.
  • Clicca OK!

totale parziale

  • Fai clic sulla scheda Dati (o premi Alt-A sulla tastiera)
  • Fai clic sull'icona Subtotale (o premi B sulla tastiera)
  • Ora che i tuoi dati sono ordinati, leggi e compila il popup del totale parziale come se stessi leggendo l'inglese naturale :
           Ad ogni cambio in
              Categoria (fare clic sulla freccia del menu a discesa e selezionare questa)
           Usa la funzione
              Somma (fare clic sulla freccia del menu a discesa e selezionare questa)
           Aggiungi subtotale a
              Costo della merce venduta (seleziona le colonne che desideri sommare per le singole categorie)

       Click OK!
    


  • 4

    In Excel 2013 ci sarà un'opzione di "raggruppamento".

    1. Seleziona il tuo tavolo.
    2. Vai alla scheda Dati.
    3. Fai clic su Struttura> Raggruppamento.

    Vedi lo screenshot qui sotto, purtroppo, è tedesco - ma le icone ti aiuteranno a trovarlo.

    Gliederung> Gruppieren


    4

    Per fare ciò con una tabella pivot :

    1. Seleziona tutti i dati (comprese le etichette delle colonne)
    2. Inserisci> Tabella pivot
    3. Trascina un campo in una dimensione (riga o colonna) della tabella pivot per raggruppare in base a esso
    4. Trascina un campo nell'area "valori" per calcolare una metrica al riguardo; in questo caso, la somma.

    inserisci qui la descrizione dell'immagine


    Questa dovrebbe essere la risposta accettata
    Jordan Morris

    1
    Excel v.16.28 ha Data/ Summarize with PivotTablepiuttosto che "Inserisci".
    Eel GhEEz,

    1

    Lo faccio sempre con vba. Sono abbastanza sicuro di aver usato lo stesso metodo dall'ufficio 95 ', con piccole modifiche apportate per il posizionamento delle colonne. Può essere fatto con meno righe se non si definiscono le variabili. Può essere fatto più velocemente se hai molte linee da percorrere o più cose con cui devi definire il tuo gruppo.

    Mi sono imbattuto in situazioni in cui un "gruppo" si basa su 2-5 celle. Questo esempio esamina solo una colonna, ma può essere espanso facilmente se qualcuno si prende il tempo per giocarci.

    Ciò presuppone 3 colonne e devi ordinare in base alla colonna group_values. Prima di eseguire la macro, selezionare la prima cella che si desidera confrontare nella colonna group_values.

    'group_values, some_number, empty_columnToHoldSubtotals
    '(roba va qui)
    'cookie 1 vuoto
    'cookie 3 vuoto
    'torta 4 vuota
    'hat 0 vuoto
    'cappello 3 vuoto
    ' ...
    'fermare
    
    Totale parziale parziale ()
      'definire due stringhe e un contagocce subtotale
      Dim thisOne, thatOne As String
      Dim subCount As Double
    
      'semina i valori
      thisOne = ActiveCell.Value
      thatOne = ActiveCell.Offset (1, 0)
      subCount = 0
    
      'imposta un loop che andrà fino a raggiungere un valore di stop
      While (ActiveCell.Value <> "stop")
    
        "confronta un valore di cella con la cella sottostante.
        If (thisOne = thatOne) Quindi
          'se le celle sono uguali, il conteggio delle righe viene aggiunto al conteggio secondario
          subCount = subCount + ActiveCell.Offset (0, 1) .Value
    
        Altro
          'se le celle non sono uguali, viene scritto il conteggio secondario e il totale parziale viene ripristinato.
          ActiveCell.Offset (0, 2) .Value = ActiveCell.Offset (0, 1) .Value + subCount
          subCount = 0
    
        Finisci se
    
        'seleziona la cella successiva in basso
        ActiveCell.Offset (1, 0). Selezionare
    
        'assegna i valori della cella attiva e quella sotto di essa alle variabili
        thisOne = ActiveCell.Value
        thatOne = ActiveCell.Offset (1, 0)
      Wend
    
    End Sub
    

    -2

    1) Seleziona l'intervallo di dati.
    2) Copia l'intervallo negli appunti.
    3) Aprire il nuovo accesso alla banca dati.
    4) Progetta una nuova tabella o incolla la gamma.
    5) Crea vista, vista SQL.
    6) Crea query "SELEZIONA cella, SOMMA (dati) COME totale DA Tabella GRUPPO PER cella".


    -3

    In Excel 2013:

    -Fare clic su Dati

    -Fare clic su Totale parziale

    Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
    Licensed under cc by-sa 3.0 with attribution required.