How to move a certain row into a new sheet when check box is checked in Excel?
This article is talking about moving a certain row into a new sheet when check box is checked in Excel.
Recommended Excel Productivity Tools
Please do as follows to move a certain row to a specified worksheet when checking a check box in Excel.
1. Shift to the worksheet you need to move row based on check box, click Developer > Insert > Check Box (ActiveX Control) to insert a check box. See screenshot:
2. Right click the sheet tab, and then click View Code from the right-clicking menu. See screenshot:
3. In the opening Microsoft Visual Basic for Applications window, please copy and paste below VBA code into the Code window.
VBA code: Move row into a specified worksheet when a check box is checked
Private Sub CheckBox1_Click() Dim xRg As Range Dim xAddress As String On Error Resume Next If CheckBox1.value Then xAddress = Application.ActiveWindow.RangeSelection.Address Set xRg = Application.InputBox("Please select the range row you will move(single cell)：", "KuTools For Excel", xAddress, , , , , 8) If xRg Is Nothing Then Exit Sub Set xRg = xRg(1).EntireRow xRg.Copy ActiveWorkbook.Sheets("Sheet3").Range("A1").PasteSpecial xlPasteAllUsingSourceTheme xRg.Clear Application.CutCopyMode = False End If End Sub
Note: In the code, Shee3 and A1 indicate that the specified row will be moved to the first row in Sheet3. Please change them based on your needs.
4. Press the Alt + Q keys to close the Microsoft Visual Basic for Applications window.
5. Turn off the Design Mode by clicking the Design Mode button on the Developer tab.
6. Check the check box, then a Kutools for Excel dialog box pops up, please select the first cell of the row （or the entire row）you need to move and click the OK button. Then the specified entire row will be moved to a certain worksheet immediately. See screenshot:
- How to move entire row to another sheet based on cell value in Excel?
- How to move entire row to the bottom of active sheet based on cell value in Excel?