Vai al contenuto principale

Come unire rapidamente le righe in base al valore di una colonna e quindi eseguire alcuni calcoli in Excel?

Ad esempio, hai un intervallo di dati e una colonna ha duplicati, ora vuoi unire le righe in base alla colonna A (ha duplicati) quindi esegui alcuni calcoli su un'altra colonna in base alle righe unite come mostrato nell'immagine:

In Excel, non esiste un metodo rapido per unire le righe in base al valore di una colonna, ma qui introduco il file
trucchi che possono aiutarti a unire righe duplicate quindi sommare o eseguire altri calcoli su un'altra colonna.


freccia blu freccia destra Unisci le righe in base a una colonna, quindi somma i valori con VBA

C'è un codice VBA che può aiutarti a unire le righe duplicate quindi sommare i valori di un'altra colonna.

Navigazione a schede e modifica di più cartelle di lavoro Excel / documenti Word come Firefox, Chrome, Internet Explore 10!

Potresti avere familiarità con la visualizzazione di più pagine Web in Firefox/Chrome/IE e passare da una all'altra facendo facilmente clic sulle schede corrispondenti. In questo caso, la scheda Office supporta un'elaborazione simile, che ti consente di sfogliare più cartelle di lavoro di Excel o documenti di Word in una finestra di Excel o di Word e di passare facilmente dall'una all'altra facendo clic sulle rispettive schede. Clicca gratuitamente 30prova di un giorno di Office Tab!

ot eccellere

1. Stampa F11 + alt tasti per abilitare Microsoft Visual Basic, Applications Edition finestra, quindi fare clic su inserire > Moduli e copia e incolla sotto il codice VBA nel nuovo Moduli finestra.

VBA: unisci le righe in base al valore di una colonna

Sub MG30Nov12()
'Updateby20150519
Dim Rng As Range
Dim InputRng As Range
Dim nRng As Range
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set InputRng = InputRng.Parent.Range(InputRng.Columns(1).Address)
With CreateObject("scripting.dictionary")
.CompareMode = vbTextCompare
For Each Rng In InputRng
    If Not .Exists(Rng.Value) Then
        .Add Rng.Value, Rng.Offset(, 1)
    Else
        .Item(Rng.Value).Value = .Item(Rng.Value).Value + Rng.Offset(, 1)
            If nRng Is Nothing Then
                Set nRng = Rng
            Else
                Set nRng = Union(nRng, Rng)
            End If
    End If
Next
If Not nRng Is Nothing Then
    nRng.EntireRow.Delete
End If
End With
End Sub

2. Stampa F5 oppure fare clic su Correre per eseguire VBA e viene visualizzata una finestra di dialogo per la selezione di un intervallo di dati da utilizzare. vedi screenshot:

doc unire le colonne in base a una colonna 3

3. Dopo aver selezionato un intervallo di lavoro, fare clic su OK. Ora i dati sono stati uniti dalla prima colonna e somma i valori nella seconda colonna.

doc unire le colonne in base a una colonna 4

Note:: Questo codice VBA può funzionare correttamente durante l'unione in base alla prima colonna e ai valori di somma nella seconda colonna.


freccia blu freccia destra Unisci le righe in base a una colonna, quindi somma i valori con Combina righe avanzate

Se non hai familiarità con il codice VBA, puoi utilizzare il Combina righe avanzate caratteristica dello strumento aggiuntivo di terza parte - Kutools for Excel per unire facilmente e rapidamente le righe duplicate, quindi sommare i valori in un'altra colonna.

Dopo shavasana, sedersi in silenzio; saluti; installazione gratuita Kutools per Excel, per favore fai come di seguito:

1. Selezionare i dati che si desidera utilizzare e fare clic su Kutools > Unisci e dividi > Combina righe avanzate. Vedi screenshot:

doc advanced combina riga 1

2. Quindi nella finestra di dialogo popping, seleziona la colonna su cui unirai altre colonne in base, quindi fai clic su Primario Key, fare clic su un'altra colonna e fare clic calcolato Quindi seleziona Somma.

Consiglio: Se l'intervallo selezionato ha intestazioni, seleziona I miei dati hanno intestazionie controlla Usa valori formattati manterrà la formattazione dopo l'unione.

doc unire le colonne in base a una colonna 6

3. Quindi fare clic Ok. Ora i dati sono stati uniti in base alla colonna principale e un altro viene riassunto. Vedi screenshot:

doc unire le colonne in base a una colonna 7


freccia blu freccia destra Unisci righe in base a una colonna, quindi esegui operazioni diverse su altre colonne con Combina righe avanzate.

Combina righe avanzate è potente, perché non solo può unire righe duplicate in una colonna e poi sommare un'altra colonna, ma può anche unire righe duplicate in una colonna, quindi eseguire operazioni diverse su altre colonne.

Supponiamo di avere un intervallo di dati come mostrato nell'immagine sottostante e di voler combinare i valori nella colonna B e sommare i valori nella colonna C in base alla colonna A.
doc unire le colonne in base a una colonna 8

Dopo shavasana, sedersi in silenzio; saluti; installazione gratuita Kutools per Excel, per favore fai come di seguito:

1. Selezionare l'intervallo di dati e fare clic su Kutools > Unisci e dividi > Combina righe avanzate. Vedi screenshot:

doc advanced combina riga 1

2. Nel Combina righe in base alla colonna dialog, fai come questi:

(1) Fare clic sulla colonna su cui si desidera combinare e fare clic Chiave primaria;

doc unire le colonne in base a una colonna 10

(2) Fare clic sulla colonna in cui si desidera combinare i dati e fare clic Combinare, quindi seleziona un separatore di cui hai bisogno dall'elenco;

doc unire le colonne in base a una colonna 11

(3) Fare clic sulla colonna in cui si desidera sommare i valori e fare clic calcolatoE selezionare Somma.

doc unire le colonne in base a una colonna 12

3. Clic Ok. Ora puoi vedere il risultato come di seguito:

doc unire le colonne in base a una colonna 13

Con Combina righe avanzate funzione, puoi anche unire le righe in base a una colonna, quindi contare, fare la media, mantenere il primo o l'ultimo dato in altre colonne. 

I migliori strumenti per la produttività in ufficio

Funzioni popolari: Trova, evidenzia o identifica i duplicati   |  Elimina righe vuote   |  Combina colonne o celle senza perdere dati   |   Round senza formula ...
Super ricerca: VLookup a criteri multipli    VLookup a valori multipli  |   VLookup su più fogli   |   Ricerca fuzzy ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa   |  Elenco a discesa dipendente   |  Elenco a discesa a selezione multipla ....
Gestore di colonna: Aggiungi un numero specifico di colonne  |  Sposta colonne  |  Attiva/disattiva lo stato di visibilità delle colonne nascoste  |  Confronta intervalli e colonne ...
Funzionalità in primo piano: Messa a fuoco della griglia   |  Vista di progettazione   |   Grande barra delle formule    Gestore di cartelle di lavoro e fogli   |  Resource Library (Testo automatico)   |  Date picker   |  Combina fogli di lavoro   |  Crittografa/decrittografa le celle    Invia e-mail per elenco   |  Super filtro   |   Filtro speciale (filtro grassetto/corsivo/barrato...) ...
I 15 migliori set di strumenti12 Testo Strumenti (aggiungi testo, Rimuovi personaggi, ...)   |   Più di 50 Grafico Tipi (Diagramma di Gantt, ...)   |   40+ Pratico Formule (Calcola l'età in base al compleanno, ...)   |   19 Inserimento Strumenti (Inserisci il codice QR, Inserisci immagine dal percorso, ...)   |   12 Conversione Strumenti (Numeri in parole, Conversione di valuta, ...)   |   7 Unisci e dividi Strumenti (Combina righe avanzate, Celle divise, ...)   |   ... e altro ancora

Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo.  Fai clic qui per ottenere la funzionalità di cui hai più bisogno...

scheda kte 201905


Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I have the same/similar question. I am trying to sum all of the columns to the right of the reference cell but it only sums the one. How do I get it to sum all those to the right individually?
This comment was minimized by the moderator on the site
Hey, your module used to work for big tables as well (eg. you want to sum up according to Year but you have Sales 1, Sales 2, Sales 3....etc). But now it only gets the first column right (Sales 1) and all others are not summed correctly. Did you change anything?
Thanks!
This comment was minimized by the moderator on the site
Hi, IK, maybe you can use the sumproduct function SUMPRODUCT((A2:A10=”Pen”)*(B2:E10)) to calculate them one by one. A2:A10 is the range contain the lookup value, pen is the criterion, B2:E10 is range that you want to sum based on criterion.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations