【ノーコード】1分でExcelを自動化する無料ツール

コードの知識不要😊ChatGPTしようぜ⚾17

MENU

【ノーコードVBA】条件と一致する行を切り取って、貼り付ける

エクセルVBAマクロを自動作成する無料アプリです。

例として「条件と一致する行を切り取って、貼り付ける」VBAマクロを作成します。

(ページの末尾に、VBAコード掲載)

事例  G列が黄色の行を削除します

マクロを実行すると、済の行が右に移動しました。

できました😀

なお、左の表の空白行の削除は、条件を空白セルにして削除します。

連続処理はこちらから

 

アプリの設定

アプリのトップページ

 ⇒▼コピー・切り取り・貼り付け

 ⇒◆コピー・切り取り・貼り付け

 

【ポイント】

■ コピーする範囲は、「済」のあるA列を選びます。

■ 範囲オプションは、途中に空白が無いB列を選びます。

■ 実際に処理する範囲を、A列からF列まで6列Offset,6)します。

■ 貼り付け先セルは、「上のセルの最終行の下に貼り付け」を選びます。

表示されるVBAコード 

アプリで作成されたコードを、VBE画面に貼り付ければ、マクロの完成です。

 

VBAコードを見る

Sub デモ() 'コピー・切り取り 
Application.ScreenUpdating = False ' 画面描画を停止
Application.DisplayAlerts = False  ' 警告表示を停止
Dim セル範囲 As String, セル As Range, 右下セル As String
Sheets("Sheet1").Select
 '表の最終行を決定
Dim 最終行 As Long
最終行 = Range("B1").End(xlDown).Row
セル範囲 = "A1" & ":" & Cells(最終行, Range("A1").Column).Address(False, False)

'◆条件分岐
For Each セル In Range(セル範囲).Cells
    If セル.Value = "済" Then
  セル.Select      
  Selection.Offset(0, 0).Resize(, 6).Cut

  Sheets("Sheet1").Select
  Range("H1").Select
  Dim 下端行 As Long, 現在列 As Long, 相手セル As String
  下端行 = Selection.CurrentRegion.Row + Selection.CurrentRegion.Rows.Count - 1
  現在列 = ActiveCell.Column
  相手セル = Cells(下端行, 現在列).Address(False, False)
  If Range(相手セル).Value <> "" Then
   相手セル = Cells(下端行 + 1, 現在列).Address(False, False)
  End If
  Range(相手セル).Select             
  ActiveSheet.Paste

 End If
Next
Application.DisplayAlerts = True   ' 警告表示を再開
Application.ScreenUpdating = True  ' 画面描画を再開
End Sub

 

ChatGPTで修正

あなたが自動化したい内容と事例が少し異なる場合は、無料で使えるマイクロソフトの「BingAIチャット」でコードを修正します。とても簡単です!

アプリはこちらから↓↓↓↓