web-dev-qa-db-ger.com

Wie ordne ich Zeilen in Excel einfach per Drag & Drop oder nach oben oder unten um?

Ich muss einige manuelle Neuanordnungen oder Zeilen in Excel vornehmen und das Ausschneiden/Einfügen ist zu schwierig. Ich bin auf der Suche nach etwas, mit dem ich Drag'n'Drop verwenden oder einige Schaltflächen zum Verschieben nach oben/unten nach oben/unten hinzufügen kann.

135
sorin
  1. Wählen Sie die Zeile/Spalte aus.
  2. Bewegen Sie den Mauszeiger an die Grenze der Zeile/Spalte, sodass Sie den Cursor mit vier Pfeilen sehen (oder den Handzeiger auf einem Mac).
  3. Drücken Sie Shift Klicken Sie auf Ihrer Tastatur auf die Zeile/Spalte und ziehen Sie sie.

Das Shift Taste mschalttaste die Zeile/Spalte, anstatt die Zielzeile/-spalte zu überschreiben.

202
kok

Dies ist immer noch eine Methode zum Ausschneiden/Einfügen, aber die einfachste Methode, die ich mir vorstellen kann.

4-Klick-Lösung: (z. B. Zeile 8 über Zeile 5 verschieben)

  1. Klicken Sie mit der rechten Maustaste auf die Zeilennummer (z. B. Zeile 8) und klicken Sie auf Ausschneiden (oder T)
  2. Klicken Sie mit der rechten Maustaste auf die Zeilennummer (z. B. Zeile 5) und dann auf Zellen einfügen (oder E)

Hinweis: Dies funktioniert auch zum Verschieben mehrerer Zeilen.

12
wilson

Versuchen:

Shift + Space bar oder klicken Sie mit der Maus auf die Zeilennummer, um die Zeile auszuwählen

Ctrl + X schneiden

Mausklick, wo Sie es wollen.

Ctrl + V um es einzufügen

4
Graham

Fügen Sie Ihrer persönlichen Makroarbeitsmappe die folgenden Makros hinzu, und weisen Sie ihnen Tastenkombinationen zu. Das Verhalten imitiert Sublime Texts Swap Line Up & Swap Line Down.

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
3
tjmcewan

Verwenden Sie in Mac Command + Shift beim ziehen. Ich nehme an, dass es in Windows sein sollte Win + Shift.

2
pablol

In ähnlichen Fällen in der Vergangenheit, in denen ich nicht nur nach einer Zeile sortieren konnte, fand ich einen Weg, eine Spalte mit einem Formelergebnis zu generieren, nach dem ich sortieren konnte.

Ich habe eine direktere Antwort auf Ihre Frage von dieser Seite gefunden:

Microsoft Word hat eine Funktion, die Excel fehlt. Jons Methode besteht darin, die Daten nach Word zu verschieben, den Word-Befehl zu verwenden und die Daten anschließend wieder nach Excel einzufügen. Folge diesen Schritten.

  1. Kopieren Sie den entsprechenden Zeilen- und Spaltenblock aus Ihrer Tabelle. Es ist am besten, die Größe des Bereichs zu notieren, z. B. 118 Zeilen x 5 Spalten
  2. Fügen Sie die Daten in ein Microsoft Word-Dokument ein, wo sie automatisch zu einer Tabelle werden und Ihre gesamte Formatierung beibehalten.
  3. Verwenden Sie in Word die wenig bekannten Tasten UMSCHALT-ALT-NACH-OBEN-PFEIL und UMSCHALT-ALT-NACH-UNTEN-PFEIL, um Zeilen (oder ausgewählte Zeilenblöcke) nach Belieben sehr schnell nach oben und unten zu schieben. Wählen Sie eine oder mehrere Zeilen aus. Sie können die gesamte Zeile oder nur einen Teil der Zeile auswählen, wie hier gezeigt.

    enter image description here

    Drücken Sie mehrmals Shift + Alt + UpArrow, um die Zeilen schnell nach oben zu verschieben.

    enter image description here

  4. Wenn Sie die Zeilen nach Ihren Wünschen sequenziert haben, fügen Sie sie wieder in Excel ein und stellen Sie sicher, dass Sie genau die Größe überschreiben, die Sie kopiert haben.

2
jzd

Hier ist ein Sub, das auch für Spalten funktioniert. es kombiniert die Funktionalität für alle vier Richtungen:

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
Micromegas

Dies ist die einfachste, die ich gefunden habe. Kann nicht wirklich ziehen und ablegen:

So verschieben Sie beispielsweise Zeile 3 vor Zeile 2:

  • klicken Sie mit der rechten Maustaste auf Zeile 3 (links auf Nummer 3) und wählen Sie Ausschneiden
  • klicken Sie mit der rechten Maustaste auf Zeile 2 (auf die Nummer 2) und wählen Sie Cut Cells einfügen
1
mrudult

Eine leichte Verbesserung gegenüber der Antwort von @ Wilson:

Klicken Sie mit der rechten Maustaste auf die Zeilennummer (z. B. Zeile 8) und drücken Sie "t". Klicken Sie mit der rechten Maustaste auf die Zeilennummer (z. B. Zeile 5) und drücken Sie "e".

Das Mischen von Maus und Tastatur beschleunigt das für mich wirklich.

1
Codemonkey