私は手動で並べ替えやExcelでの行を行わなければならず、カット/貼り付けを使用するのは難しすぎます。ドラッグ&ドロップを使用したり、上下に移動したり上下に移動したりするためのボタンを追加できるようなものを探しています。
の Shift key シフト対象の行/列を上書きする代わりに、その行/列を移動します。
これはまだカット/ペースト方式ですが、私が考えることができる最も簡単な方法です。
4クリックの解決策(例:行8を行5の上に移動)
注:これは複数行を移動する場合にも機能します。
試してください:
Shift + Space bar または行番号をマウスでクリックして行を選択します。
Ctrl + X 切る
あなたがそれを望むところでマウスクリック。
Ctrl + V 貼り付ける
次のマクロを個人用マクロブックに追加し、それらにショートカットキーを割り当てます。この動作は、Sublime Textの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
Macでは、 Command + Shift ドラッグ中私は窓でそれがあるべきであると思います Win + Shift。
行で並べ替えることができなかった過去の同様のケースを処理する際に、並べ替えることができる式の結果を持つ列を生成する方法を見つけました。
私はあなたの質問に対するより直接的な答えをこのサイトから見つけました:
Microsoft WordにはExcelに欠けている機能があります。 Jonの方法では、データをWordに移動し、Wordコマンドを使用してからデータをExcelにペーストバックします。次の手順を実行します。
- あなたのスプレッドシートから関連する行と列の塊をコピーしてください。範囲のサイズ、たとえば118行×5列に注意することをお勧めします。
- データをMicrosoft Word文書に貼り付けると、自動的に表になり、すべての書式設定が保持されます。
Wordでは、あまり知られていないSHIFT-ALT-UP-ARROWおよびSHIFT-ALT-DOWN-ARROWを使用して、自由に行(または選択した行の塊)を自由に上下にスライドさせることができます。 1つ以上の行を選択してください。ここに示すように、行全体または行の一部だけを選択できます。
Shift + Alt + UpArrowを数回押して、行を素早く上にスライドさせます。
行を好きなように順序付けしたら、コピーしたのとまったく同じサイズのチャンクを上書きして、Excelに貼り付け直します。
これは列に対しても機能するsubです。それは4つの方向すべての機能を兼ね備えています。
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
これは私が見つけた最も簡単なものです。 実際にはドラッグアンドドロップできません:
たとえば、行3を行2の前に移動するには、次のようにします。
@ wilsonの答えが少し改善されました。
行番号(例:行8)を右クリック、 "t"を押す行番号(例、行5)を右クリック、 "e"
マウスとキーボードを混在させると本当にスピードが上がります。