Note: The other languages of the website are Google-translated. Back to English

Come inserire righe vuote quando il valore cambia in Excel?

Supponendo di avere un intervallo di dati e ora si desidera inserire righe vuote tra i dati quando il valore cambia, in modo da poter separare gli stessi valori sequenziali in una colonna come mostrato nelle schermate seguenti. In questo articolo, parlerò di alcuni trucchi per risolvere questo problema.

Inserisci righe vuote quando il valore cambia con la funzione Subtotale

Inserisci righe vuote quando il valore cambia con le colonne helper

Inserisci righe vuote quando il valore cambia con il codice VBA

Inserisci un numero specifico di righe vuote quando il valore cambia con una potente funzionalità


Inserisci righe vuote quando il valore cambia con la funzione Subtotale

Con la Totale caratteristica, è possibile inserire righe vuote tra i dati quando il valore cambia come segue:

1. Seleziona l'intervallo di dati che desideri utilizzare.

2. Clic Dati > Totale per aprire il Totale finestra di dialogo e nel file Totale finestra di dialogo, eseguire le seguenti opzioni:

1: Selezionare il nome della colonna in cui si desidera inserire righe vuote in base a quando il valore cambia in Ad ogni cambio nella sezione;
2: Scegli Contare dal Utilizzare la funzione menu `A tendina;
3: Controlla il nome della colonna in cui desideri inserire il totale parziale nel file Aggiungi subtotale a casella di riepilogo

3. Quindi fare clic OK, sono state inserite le linee del subtotale tra i diversi prodotti e i simboli di contorno sono visualizzati a sinistra della tabella, vedi screenshot:

4. Quindi fai clic sul numero 2 nella parte superiore del simbolo del contorno per visualizzare solo le linee del totale parziale.

5. Quindi selezionare i dati dell'intervallo del totale parziale e premere Alt +; tasti di scelta rapida per selezionare solo le righe visibili, vedi screenshot:

6. Dopo aver selezionato solo le righe visibili, premere il tasto Elimina sulla tastiera e tutte le righe del totale parziale sono state rimosse.

7. Quindi fare clic su qualsiasi altra cella e tornare indietro Dati > Separa > Cancella contorno per rimuovere i contorni, vedi screenshot:

8. I simboli di struttura sono stati cancellati immediatamente e puoi vedere righe vuote inserite tra i dati quando il valore cambia, vedi screenshot:

9. Alla fine, puoi eliminare la colonna A di cui hai bisogno.


Inserisci interruzione di pagina, righe vuote, bordo inferiore o colore di riempimento quando il valore cambia rapidamente

Se si dispone di Kutools for Excel's Distinguere le differenze funzione, puoi inserire rapidamente interruzioni di pagina, righe vuote, bordo inferiore o colore di riempimento quando il valore cambia in base alle tue esigenze. Guarda la demo qui sotto.         Fai clic per scaricare Kutools per Excel!


Inserisci righe vuote quando il valore cambia con le colonne helper

Con le colonne helper, puoi inserire prima la formula, quindi applicare il Trova e sostituisci funzione, infine, inserisce le righe vuote tra i valori che cambiano. Si prega di fare quanto segue:

1. In una cella vuota C3, inserisci questa formula = = A3 A2e nella cella D4 immettere questa formula = = A4 A3, vedi screenshot:

2. Quindi selezionare C3: D4 e trascinare il quadratino di riempimento sull'intervallo in cui si desidera applicare queste formule e otterrai I veri or Falso nelle celle, vedi screenshot:

3. E poi premere Ctrl + F chiavi per aprire il Trova e sostituisci dialog, nella finestra di dialogo spuntata, inserisci FALSO nella Trova quello che casella di testo sotto Trova scheda e fare clic Opzioni pulsante per espandere questa finestra di dialogo e scegliere Valori dal Guarda dentro elenco a discesa, vedi screenshot:

4. Clicchi Trova tutto pulsante, quindi premere Ctrl + A per selezionare tutti i risultati della ricerca, tutte le celle FALSE sono state selezionate contemporaneamente, vedi screenshot:

6. Chiudi il Trova e sostituisci finestra di dialogo, passaggio successivo, è possibile inserire righe vuote facendo clic Casa > inserire > Inserisci righe del foglioe righe vuote sono state inserite nei dati quando il valore cambia in base alla colonna A, vedere screenshot:

7. Infine, puoi eliminare la colonna helper C e D di cui hai bisogno.


Inserisci righe vuote quando il valore cambia con il codice VBA

Se sei stanco di usare i metodi sopra, ecco un codice che può aiutarti a inserire righe vuote tra i valori modificati contemporaneamente.

1. Tieni premuto il ALT + F11 chiavi per aprire il Finestra di Microsoft Visual Basic, Applications Edition.

2. Clic inserire > Moduloe incolla il codice seguente nel file Finestra del modulo.

Codice VBA: inserisci righe vuote quando il valore cambia

Sub InsertRowsAtValueChange()
'Update by Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
    If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
        WorkRng.Cells(i, 1).EntireRow.Insert
    End If
Next
Application.ScreenUpdating = True
End Sub

3. Quindi premere F5 chiave per eseguire questo codice e verrà visualizzata una finestra di messaggio per consentire di selezionare i dati di una colonna in cui si desidera inserire righe vuote quando il valore cambia in base a, vedere screenshot:

4. E poi clicca OK, le righe vuote sono state inserite tra i dati quando il valore cambia in base alla colonna A.


Inserisci un numero specifico di righe vuote quando il valore cambia con una potente funzionalità

Se sei provato con i metodi fastidiosi di cui sopra, qui, introdurrò uno strumento utile, Kutools for Excel's Distinguere le differenze può aiutarti a inserire interruzioni di pagina, righe vuote, bordo inferiore o colore di riempimento quando il valore della cella cambia rapidamente e facilmente.

Suggerimenti:Per applicare questo Distinguere le differenze in primo luogo, dovresti scaricare il file Kutools for Excele quindi applica la funzione in modo rapido e semplice.

Dopo l'installazione Kutools for Excel, per favore fai come questo:

1. Clic Kutools > Formato > Distinguere le differenze, vedi screenshot:

2. Nel Distinguere le differenze per colonna chiave finestra di dialogo, eseguire le seguenti operazioni:

  • Seleziona l'intervallo di dati che desideri utilizzare, quindi scegli la colonna chiave su cui desideri inserire righe vuote;
  • Quindi controlla Riga vuota opzione dal Opzioni sezione e inserisci il numero di righe vuote che desideri inserire.

3. Quindi fare clic Ok pulsante e il numero specifico di righe vuote è stato inserito nei dati se il valore della cella cambia, vedere screenshot:

Fai clic per scaricare Kutools per Excel e prova gratuita ora!


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il 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!
fondo officetab
Commenti (16)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Ho una colonna con i numeri 5,4,3,2 e 1 (MOLTI) e voglio separare i Cinque dagli altri, come: 5 5 5 4 3 2 1 5 5 5 5 5 4 3 2 1 I numeri sono in ordine desc e ci sono sempre un quattro sotto un cinque, quindi ho provato: Sub InsertRowsAtValueChange() 'Update 20140716 Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "KutoolsforExcel" Set WorkRng = Application.Selection Imposta WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) Application.ScreenUpdating = False For i = WorkRng.Rows.Count To 2 Step -1 If WorkRng.Cells(i, 1). Value = 5 e WorkRng.Cells(i - 1, 1).Value = 4 Quindi WorkRng.Cells(i, 1).EntireRow.Insert End If Next Application.ScreenUpdating = True End Sub Ma non ha funzionato. Mi potete aiutare?
Questo commento è stato fatto dal moderatore sul sito
La formula funziona alla grande, tuttavia ci sono alcuni esempi in cui non riconosce
Questo commento è stato fatto dal moderatore sul sito
Grazie mille, ho cercato ovunque e questa è stata l'unica soluzione che ha funzionato per me che era anche in un inglese semplice. Tutti gli altri siti Web di tutorial di Excel non lo hanno scomposto passo dopo passo come hai fatto tu, grazie mille. Saluti : )
Questo commento è stato fatto dal moderatore sul sito
Grazie mille per aver descritto più soluzioni per il problema. Ho usato quello di Visual Basic e ho cambiato [quote]WorkRng.Cells(i, 1).EntireRow.Insert[/quote] con [quote]With WorkRng.Cells(i, 1).EntireRow.Borders(xlEdgeTop) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlMedium End With[/quote] Questo disegnerà linee tra le righe con valori che cambiano invece di righe vuote.
Questo commento è stato fatto dal moderatore sul sito
Dove nel codice dovrei modificare per includere più di una riga, devo aggiungere 10 dopo ogni interruzione... Grazie
Questo commento è stato fatto dal moderatore sul sito
ciao a tutti grazie!! è fantastico, ragazzi potete anche farmi come inserire 2 righe quando il valore cambia in VBA o tramite Excel.
Questo commento è stato fatto dal moderatore sul sito
Ciao, questi sono quasi utili! Il primo metodo non funziona per me perché quando seguo i passaggi in modo esplicito, i dati che elimino nei riquadri del totale parziale eliminano le intere colonne che ho ordinato. Nel secondo metodo, quando arrivo al passaggio in cui inserisco le righe del foglio, le righe vengono inserite SOPRA le celle FALSE che suddividono i dati, ma l'ultima selezione di ogni gruppo viene quindi aggiunta al gruppo sottostante. Qualche consiglio???
Questo commento è stato fatto dal moderatore sul sito
[quote]Ciao a tutti grazie!! è fantastico, ragazzi potete anche farmi come inserire 2 righe quando il valore cambia in VBA o tramite Excel.Di Hudson[/quote] Per favore fatemi sapere come inserire più di 1 riga.
Questo commento è stato fatto dal moderatore sul sito
Sto usando la mia soluzione da un po' di tempo.
1. Inserisci una colonna di supporto nella colonna A
2. In A2, digitare "se(B2=B1,A1,A1+1)"
3. Copia quella formula fino all'ultima riga
4. Copia tutte le celle popolate nella colonna A e Incolla speciale (valori) su di esse
5. Copia di nuovo tutte le celle e incollale nella colonna A nella prima cella non popolata (ad esempio, se hai 104 righe di dati più una riga di intestazione, incolleresti nella cella A106)
6. Fai clic su Dati e rimuovi duplicati (solo sulle celle che hai appena incollato nel passaggio 5; non su tutte le righe)
7. Ordina tutta la colonna A
8. Elimina la colonna A

Sembra un sacco di passaggi ma richiede solo pochi secondi.
Questo commento è stato fatto dal moderatore sul sito
Il codice VBA ha funzionato la prima volta e ha fatto esattamente quello che stavo cercando di fare. Grazie mille!
Questo commento è stato fatto dal moderatore sul sito
RE: inserisci righe vuote quando il valore cambia con il codice vba
C'è un modo per salvare l'intervallo e non doverlo selezionare ogni volta che lo eseguo?
Questo commento è stato fatto dal moderatore sul sito
Ciao,
È molto utile nel caso in cui devo inserire 1 riga, ma se devo inserire 145 righe ogni volta che i dati cambiano nella colonna specifica, come posso farlo?
Questo commento è stato fatto dal moderatore sul sito
Ciao, Hassan,
Per inserire più righe vuote quando il valore cambia in una colonna specifica, è necessario applicare il seguente codice VBA:

Nota: nel codice seguente, dovresti modificare il numero 99 in base alle tue esigenze, ad esempio, quando inserisci 145 righe vuote, dovresti cambiare il numero 99 in 144. Per favore provalo, spero che possa aiutarti!

Sub InsertRowsAtValueChange()
Dim Rng come intervallo
Dim WorkRng come intervallo
On Error Resume Next
xTitleId = "KtoolsforExcel"
Imposta WorkRng = Selezione.Applicazione
Imposta WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Tipo:=8)
Application.ScreenUpdating = False
Per i = WorkRng.Rows.Count a 2 Passaggio -1
If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
Intervallo(WorkRng.Cells(i, 1).EntireRow, WorkRng.Cells(i + 99, 1).EntireRow).Insert
End If
Successiva
Application.ScreenUpdating = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Molto utile. Il codice che Skyyang mostra sopra ha funzionato perfettamente. Assicurati solo che i dati non contengano già spazi.

Non capisco VBA, ma credo che se volessi aggiungere più righe sotto i dati che avevano già la spaziatura, dovrebbe esserci un modo per ignorare gli spazi.

È possibile aggiungere una riga per ignorare o saltare righe vuote? Ciò potrebbe rendere questo codice più universale e ripetibile, se necessario. Anche una funzione di eliminazione simile a questa può essere utile, quindi non è necessario annullare.
Questo commento è stato fatto dal moderatore sul sito
Il metodo VBA può essere adattato per ignorare le celle vuote? Ho un file in cui devo inserire le righe in base a due colonne diverse, ma quando eseguo la macro sulla seconda colonna finisco con tre righe vuote in cui la prima macro esegue le righe inserite.
O può essere eseguito su due colonne contemporaneamente?
Questo commento è stato fatto dal moderatore sul sito
Ciao, Hassan,

Questo vba è sorprendente, mentre ho bisogno di un altro codice alternativo per inserire una singola riga vuota dopo le modifiche ai numeri di sequenza. Esempio:- In una colonna con serie di numeri come 1, 2, 3, 5, 6, 9 e così via...
È necessario aggiungere una singola riga vuota tra 3 e 5 e tra 6 e 9.
Per favore, puoi farlo.
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL