Jawaban:
The Shiftkey menggeser baris / kolom bukan menimpa baris sasaran / kolom.
Ini masih merupakan metode potong / tempel, tetapi merupakan cara paling sederhana yang dapat saya pikirkan.
Solusi 4-klik: (mis. Pindahkan baris 8 di atas baris 5)
Catatan: Ini juga berfungsi untuk memindahkan banyak baris.
Tambahkan makro berikut ke Buku Kerja Makro Pribadi Anda dan tetapkan mereka tombol pintas. Perilaku meniru Sublime Text's 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
Dalam menangani kasus-kasus serupa di masa lalu, di mana saya tidak bisa hanya mengurutkan berdasarkan satu baris, saya menemukan cara untuk menghasilkan kolom dengan hasil rumus yang merupakan sesuatu yang bisa saya urutkan.
Saya menemukan jawaban yang lebih langsung untuk pertanyaan Anda dari situs ini :
Microsoft Word memiliki fitur yang tidak dimiliki Excel. Metode Jon melibatkan pemindahan data ke Word, menggunakan perintah Word dan kemudian menempelkan data kembali ke Excel. Ikuti langkah ini.
- Salin potongan baris dan kolom yang relevan dari speadsheet Anda. Yang terbaik adalah mencatat ukuran kisaran, misalnya, 118 baris x 5 kolom
- Rekatkan data ke dalam dokumen Microsoft Word, di mana secara otomatis menjadi tabel dan mempertahankan semua format Anda.
Di Word, gunakan SHIFT-ALT-UP-ARROW dan SHIFT-ALT-DOWN-ARROW yang sedikit diketahui untuk menggeser baris dengan cepat (atau potongan baris tertentu) ke atas dan ke bawah sesuka hati. Pilih satu atau lebih baris. Anda dapat memilih seluruh baris atau hanya sebagian dari baris seperti yang ditunjukkan di sini.
Tekan Shift + Alt + UpArrow beberapa kali untuk menggeser baris dengan cepat ke posisi semula.
Ketika Anda telah mengurutkan baris yang Anda inginkan, tempel kembali ke Excel, pastikan Anda menimpa potongan ukuran yang sama persis dengan yang Anda salin.
Sedikit perbaikan pada jawaban @ wilson:
Klik kanan nomor baris (mis. Baris 8), tekan "t" Klik kanan nomor baris (mis. Baris 5), tekan "e"
Memadukan penggunaan mouse dan keyboard benar-benar mempercepatnya bagi saya.
Berikut adalah sub yang juga berfungsi untuk kolom; menggabungkan fungsi untuk keempat arah:
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