もう、右クリックメニューは見なくていい
毎日、膨大な顧客リストや売上データとにらめっこしていませんか?
- 「この間に1行入れたいだけなのに…」
- 「不要な行を消すだけで日が暮れる…」
そんな「終わりの見えない単純作業」を解決するのが、今回の記事です。
私も昔、似たようなことをしていました。毎日何百回もマウスをカチカチして、手首が腱鞘炎になりかけました。
今回は行・列の挿入削除のショートカットキーと、プログラミング(VBA)の両方を紹介します。
1. マウスを捨てよう!0.5秒のショートカット
まずは基本中の基本。キーボードだけで行列操作を完結させられます。
【行・列を挿入する】
- Ctrl + Shift + 「+(プラス)」
(テンキーがある場合は Ctrl + + だけでOK)
【行・列を削除する】
- Ctrl + 「-(マイナス)」
知らなかった方はぜひやってみてください。マウスで「カチッ」とやる間にショートカットから3回は操作できます。
2. 【コピペOK】VBAでを一瞬で処理する
「回数が多いからショートカットも面倒くさい。全部自動でやってほしい」と言う人も多いですよね。
そんな人は次のコードをコピーして貼り付けてみてください。
基本:特定の行を挿入・削除する
指定した場所をピンポイントで操作する場合に使えます。
Sub InsertDeleteBasic()
' 3行目に新しい行を挿入
Rows(3).Insert
' 5行目を削除
Rows(5).Delete
' C列を削除したい場合
Columns("C").Delete
End Sub
応用:空白行を一括削除
先ほどの基本をもとに今度はデータの中に混ざった「無駄な空白行」を、下から順番にチェックして全部消していきます。
Sub DeleteEmptyRows()
Dim i As Long
Dim lastRow As Long
' データの最終行を取得(A列を基準)
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
' 最終行から1行目に向かって逆ループ
For i = lastRow To 1 Step -1
' もしA列が空欄だったら
If Cells(i, 1).Value = "" Then
' その行を削除
Rows(i).Delete
End If
Next i
MsgBox "空白行の削除が完了しました!"
End Sub
※注意:行を削除するループ処理は、必ず「下から上へ」回します。上からやると行番号がずれてバグります。
VBAを独学で学び、業務自動化に5年以上携わってきた私が、「本当に実務で役立った!」と感じた2冊を紹介します。 もう本選びで失敗したくない方は、よければ参考にしてみてください。
リンク
リンク

コメント