Robert ha una serie di numeri nella colonna A che vanno da 1 a 100. Vorrebbe estrarre solo quei valori tra 65 e 100, inclusi, e inserirli nella colonna B. Si chiede se ci sia un modo per farlo facilmente.

La risposta breve è che esiste un modo molto semplice per farlo, a condizione che non ti dispiaccia ordinare l’elenco dei numeri. Segui questi passaggi:

  1. Seleziona una cella nella colonna A. (Non importa quale cella selezioni, purché sia ​​una delle celle che contiene un numero.)

  2. Visualizza la scheda Dati della barra multifunzione.

  3. Fare clic sullo strumento Ordina dal più piccolo al più grande, nel gruppo Ordina e filtra.

Excel ordina tutti i numeri nella colonna.

  1. Seleziona i numeri che vuoi inserire nella colonna B.

  2. Premi Ctrl + X per tagliare le celle negli Appunti.

  3. Seleziona la cella B1 (o la prima cella nella colonna B in cui desideri che appaiano i valori).

  4. Premi Ctrl + V per incollare le celle nella colonna.

Questo è tutto; ora hai le celle desiderate nella colonna B. Se volevi semplicemente copiare le celle, al passaggio 5 avresti potuto premere Ctrl + C.

Se è necessario mantenere i valori nella colonna A nel loro ordine originale (meno i valori che si desidera spostare), è possibile farlo utilizzando la colonna B come colonna “ferma posizione”. A destra del primo valore nella colonna A, metti il ​​valore 1. Quindi, sotto quello nella colonna B metti un 2, poi un 3 e così via, fino a quando ogni valore nella colonna A ha un valore corrispondente nella colonna B che indica la posizione dei numeri. Quindi, segui questi passaggi:

  1. Seleziona una cella nella colonna A. (Non importa quale cella selezioni, purché sia ​​una delle celle che contiene un numero.)

  2. Visualizza la scheda Dati della barra multifunzione.

  3. Fare clic sullo strumento Ordina dal più piccolo al più grande, nel gruppo Ordina e filtra.

Excel ordina tutti i numeri nella colonna.

  1. Seleziona i numeri nella colonna A che vuoi spostare, insieme ai numeri alla loro destra nella colonna B.

  2. Premi Ctrl + X per tagliare le celle negli Appunti.

  3. Seleziona la cella D1. (È importante selezionare la cella D1 perché è necessario lasciare vuota la colonna C.)

  4. Premi Ctrl + V per incollare le celle nelle colonne D ed E.

  5. Seleziona una cella nella colonna B.

  6. Visualizza la scheda Dati della barra multifunzione.

  7. Fare clic sullo strumento Ordina dal più piccolo al più grande, nel gruppo Ordina e filtra.

Excel ordina tutti i numeri nella colonna in base ai valori nella colonna B.

  1. Seleziona una cella nella colonna E.

  2. La scheda Dati della barra multifunzione dovrebbe essere ancora visualizzata.

  3. Fare clic sullo strumento Ordina dal più piccolo al più grande, nel gruppo Ordina e filtra.

Excel ordina tutti i numeri nella colonna in base ai valori nella colonna E.

  1. Elimina le colonne B, C ed E.

A questo punto i valori nelle colonne A e B riflettono il loro ordine originale, da quando erano tutti nella colonna A.

Un altro modo per spostare le celle consiste nell’utilizzare le funzionalità di filtro di Excel. Segui questi passaggi:

  1. Seleziona una cella nella colonna A. (Non importa quale cella selezioni, purché sia ​​una delle celle che contiene un numero.)

  2. Visualizza la scheda Dati della barra multifunzione.

  3. Fare clic sullo strumento Filtro. Excel aggiunge una freccia a discesa del filtro sul lato destro dell’intestazione della colonna A.

  4. Fare clic sulla freccia in basso e scegliere Filtri numerici | Fra. Excel visualizza la finestra di dialogo Filtro automatico personalizzato. (Vedi figura 1.)

  5. Nella casella Maggiore o uguale a, immettere 65.

  6. Nella casella Minore o uguale a, immettere 100.

  7. Fare clic su OK. Excel limita ciò che viene mostrato solo a quelle righe che soddisfano i criteri specificati nei passaggi da 4 a 6.

  8. Seleziona le celle che vengono visualizzate.

  9. Premi Ctrl + C per copiare le celle negli Appunti.

  10. Seleziona la cella B1 (o la prima cella nella colonna B in cui desideri che appaiano i valori).

  11. Premi Ctrl + V per incollare le celle nella colonna.

  12. Seleziona una delle celle nella colonna A.

  13. Fare nuovamente clic sullo strumento Filtro. (La scheda Dati della barra multifunzione dovrebbe essere ancora visualizzata.) Excel rimuove il filtro applicato in precedenza.

È inoltre possibile utilizzare le formule nella colonna B per estrarre i valori che rientrano nell’intervallo desiderato. Un modo semplice per farlo è inserire questa formula nella cella B1:

=IF(AND(A1>=65, A1<=100),A1,"")

Copia la formula per quanto necessario nella colonna B e finisci con qualsiasi valore compreso tra 65 e 100, inclusi, “copiato”

nella colonna B. Se il valore è al di fuori di questo intervallo, la cella nella colonna B viene lasciata vuota.

Supponendo che non si desideri alcuna cella vuota nella colonna B, è possibile utilizzare una formula di matrice per acquisire i valori. Se i tuoi valori sono nell’intervallo A1: A500, inserisci quanto segue nella cella B1:

=IFERROR(INDEX(A$1:A$500,SMALL(IF(A$1:A$500>=65,ROW($1:$500)),ROW())),"")

Inseriscilo usando Ctrl + Maiusc + Invio, quindi copia la formula fino a quando desideri.

Ci sono, ovviamente, soluzioni basate su macro che puoi usare. Questi sono utili se hai bisogno di eseguire questa operazione un po ‘con i dati che recuperi da una fonte esterna. Quello che segue è un semplice esempio di una macro che potresti usare:

Sub ExtractValues1()

Dim x As Integer

x = 1     For Each cell In Selection         If cell.Value >= 65 And cell.Value <= 100 Then             Cells(x, 2) = cell.Value             x = x + 1         End If     Next cell End Sub

Si utilizza la macro selezionando le celle che si desidera valutare nella colonna A e quindi eseguendola. Esamina ogni cella e copia il valore nella colonna B. Il valore originale nella colonna A rimane invariato.

Per una maggiore flessibilità puoi fare affidamento sul chiedere all’utente i valori inferiore e superiore, come mostrato in questa macro:

Sub ExtractValues2()

Dim iLowVal As Integer     Dim iHighVal As Integer

iLowVal = InputBox("Lowest value wanted?")

iHighVal = InputBox("Highest value wanted?")



For Each cell In Range("A:A")

If cell.Value <= iHighVal And cell.Value >= iLowVal Then             ActiveCell.Value = cell.Value             ActiveCell.Offset(1, 0).Activate         End If     Next End Sub

Prima di eseguire la macro, seleziona la cella nella parte superiore dell’intervallo in cui desideri posizionare i valori estratti. Niente nella colonna A è interessato; solo i valori compresi tra l’intervallo inferiore e quello superiore vengono copiati nella nuova posizione.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (13397) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 e Excel in Office 365.