2011-02-24 11:24:43 +0000 2011-02-24 11:24:43 +0000
148
148

Come riordinare facilmente le righe in Excel con il drag and drop o spostare verso l'alto o verso il basso?

Devo fare qualche riordino manuale o righe in Excel e tagliare/incollare è troppo difficile da usare. Sto cercando qualcosa che mi permetta di usare il drag'n'drop o di aggiungere alcuni pulsanti per spostare su/giù move-top/bottom.

Risposte (10)

216
216
216
2011-07-24 19:59:02 +0000
  1. 1. Selezionare la riga/colonna.
  2. 2. Spostare il cursore del mouse sul confine della riga/colonna in modo da vedere il cursore a quattro frecce (o il cursore a mano su un Mac).
  3. 3. Premere Shift sulla tastiera, quindi fare clic e trascinare la riga/colonna.

Il tasto Shift sposta la riga/colonna invece di sovrascrivere la riga/colonna di destinazione.

14
14
14
2011-02-28 07:38:02 +0000

Questo è ancora un metodo di taglia e incolla, ma è il modo più semplice che mi viene in mente.

** Soluzione a 4 clic:** (es. spostare la riga 8 sopra la riga 5)

  1. 1. Fare clic con il tasto destro del mouse sul numero di riga (ad es. riga 8), fare clic su Taglia (o T)
  2. 2. Fare clic con il pulsante destro del mouse sul numero di riga (ad es. riga 5), fare clic su Inserire le celle tagliate (o E)

Nota: questo funziona anche per lo spostamento di più righe.

3
3
3
2014-01-23 11:04:06 +0000

Aggiungete le seguenti macro alla vostra Personal Macro Workbook e assegnate loro i tasti di scelta rapida. Il comportamento imita la linea di swap up e la linea di swap down di Sublime Text.

Sub move_rows_down()
    Dim rOriginalSelection As Range
    Set rOriginalSelection = Selection.EntireRow
    With rOriginalSelection
        .Select
        .Cut
        .Offset(rOriginalSelection.rows.Count + 1, 0).Select
    End With
    Selection.Insert
    rOriginalSelection.Select
End Sub

Sub move_rows_up()
    Dim rOriginalSelection As Range
    Set rOriginalSelection = Selection.EntireRow
    With rOriginalSelection
        .Select
        .Cut
        .Offset(-1, 0).Select
    End With
    Selection.Insert
    rOriginalSelection.Select
End Sub
2
2
2
2011-02-24 11:44:22 +0000

Nel trattare casi simili in passato, in cui non potevo semplicemente ordinare per riga, ho trovato il modo di generare una colonna con un risultato di formula che era qualcosa su cui potevo ordinare.

Ho trovato una risposta più diretta alla tua domanda da questo sito :

Microsoft Word ha una caratteristica che manca in Excel. Il metodo di Jon consiste nello spostare i dati in Word, utilizzando il comando Word e poi incollando i dati in Excel. Seguire questi passi.

  1. Copiare il relativo pezzo di righe e colonne dal vostro speadsheet. È meglio notare la dimensione dell'intervallo, ad esempio, 118 righe x 5 colonne
  2. 2. Incollare i dati in un documento Microsoft Word, dove diventano automaticamente una tabella e mantengono tutta la formattazione.
  3. In Word, utilizzare le poco conosciute MAIUSC-ALT-UP-ARROW e MAIUSC-ALT-DOWN-ARROW per far scorrere molto velocemente le righe (o i pezzi di righe selezionati) su e giù a piacere. Selezionare una o più righe. È possibile selezionare l'intera riga o solo una porzione di riga come mostrato qui.

  4. Dopo aver messo in sequenza le righe come desiderato, incollarle di nuovo in Excel, assicurandosi di sovrascrivere il pezzo della stessa dimensione che avete copiato.

2
2
2
2012-07-12 13:12:26 +0000

In Mac, usare Comando + Shift mentre si trascina. Suppongo che in windows dovrebbe essere Win + Shift.

1
1
1
2015-02-21 15:54:17 +0000

Prova:

Shift + Barra spaziatrice o cliccare con il mouse sul numero della linea per selezionare la linea

Ctrl + X per tagliare

Ctrl + V per incollarla.

Ctrl + V per incollarla

1
1
1
2019-11-18 10:10:12 +0000

Per gli snob come me che vogliono usare solo la tastiera:

  1. 1. Selezionare le celle che si desidera spostare (non deve essere necessariamente una riga completa per questo)
  2. 3. Spostarsi nella cella immediatamente sotto a quella che si vuole spostare il contenuto in
  3. 3. Premere ctrl-+
1
1
1
2014-06-25 15:11:49 +0000

Un leggero miglioramento rispetto alla risposta di @wilson:

Numero di riga del tasto destro del mouse (es. riga 8), premere “t” Numero di riga del tasto destro del mouse (es. riga 5), premere “e”

L'uso misto del mouse e della tastiera mi velocizza molto.

1
1
1
2015-05-08 17:03:37 +0000

Ecco un sub che funziona anche per le colonne; combina le funzionalità per tutte e quattro le direzioni:

Sub MoveRowsOrColumns(direction As String)
    Dim rOriginalSelection As Range

    Select Case direction
    Case "up", "down"
        Set rOriginalSelection = Selection.EntireRow
    Case "left", "right"
        Set rOriginalSelection = Selection.EntireColumn
    Case Else
        Debug.Assert False
    End Select

    With rOriginalSelection
        .Select
        .Cut
        Select Case direction
        Case "up"
            .Offset(-1, 0).Select
        Case "down"
            .Offset(rOriginalSelection.Rows.Count + 1, 0).Select
        Case "left"
            .Offset(0, -1).Select
        Case "right"
            .Offset(0, rOriginalSelection.Columns.Count + 1).Select
        End Select
    End With
    Selection.Insert
    rOriginalSelection.Select
End Sub
-1
-1
-1
2013-08-31 10:37:42 +0000

Questa è la più facile che ho trovato. Non può davvero trascinare e rilasciare:

Per esempio per spostare la riga 3 prima della riga 2:

  • click destro sulla riga 3 (sul numero 3 a sinistra) e selezionare Taglia
  • click destro sulla riga 2 (sul numero 2) e selezionare Inserisci cellule tagliate