如何基于Excel中的单元格值将整行移动到另一张工作表？
为了根据单元格值将整行移动到另一张纸，本文将为您提供帮助。
使用VBA代码根据单元格值将整行移动到另一张工作表
使用 Kutools for Excel 根据单元格值将整行移动到另一个工作表
使用VBA代码根据单元格值将整行移动到另一张工作表
如下面的屏幕截图所示，如果在C列中存在一个特定的单词“ Done”，则需要将整个行从Sheet1移到Sheet2。您可以尝试以下VBA代码。
1。 按 其他+ F11 同时打开 Microsoft Visual Basic应用程序 窗口。
2.在“ Microsoft Visual Basic for Applications”窗口中，单击“ 插页 > 模块。 然后将下面的VBA代码复制并粘贴到窗口中。
VBA code 1: Move entire row to another sheet based on cell value
Sub Cheezy()
'Updated by Kutools for Excel 2017/8/28
Dim xRg As Range
Dim xCell As Range
Dim I As Long
Dim J As Long
Dim K As Long
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
If J = 1 Then
If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
End If
Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
On Error Resume Next
Application.ScreenUpdating = False
For K = 1 To xRg.Count
If CStr(xRg(K).Value) = "Done" Then
xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
xRg(K).EntireRow.Delete
If CStr(xRg(K).Value) = "Done" Then
K = K - 1
End If
J = J + 1
End If
Next
Application.ScreenUpdating = True
End Sub
备注：在代码中， Sheet1 工作表包含您要移动的行。 和 Sheet2 是您将在其中找到行的目标工作表。 “C：C”是包含特定值的列，而单词“完成 ”是您将基于其移动行的特定值。 请根据您的需要进行更改。
3。 按 F5 键运行代码，然后将满足Sheet1中条件的行立即移至Sheet2。
备注：上面的VBA代码将移至指定的工作表后从原始数据中删除行。 如果只想基于单元格值复制行而不是删除它们。 请应用下面的VBA代码2。
VBA code 2: Copy entire row to another sheet based on cell value
Sub MoveRowBasedOnCellValue()
'Updated by Extendoffice 2017/11/10
Dim xRg As Range
Dim xCell As Range
Dim I As Long
Dim J As Long
Dim K As Long
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
If J = 1 Then
If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
End If
Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
On Error Resume Next
Application.ScreenUpdating = False
For K = 1 To xRg.Count
If CStr(xRg(K).Value) = "Done" Then
xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
J = J + 1
End If
Next
Application.ScreenUpdating = True
End Sub
使用 Kutools for Excel 根据单元格值将整行移动到另一个工作表
如果您是VBA代码的新手。 在这里我介绍 选择特定的单元格 实用程序 Kutools for Excel。 使用此实用程序，您可以轻松地基于工作表中的某个单元格值或不同的单元格值选择所有行，然后根据需要将所选行复制到目标工作表中。 请执行以下操作。
申请前 Kutools for Excel请 首先下载并安装.
1.选择包含要作为行依据的单元格值的列列表，然后单击 库工具 > 选择 > 选择特定的单元格。 看截图：
2.在开幕 选择特定的单元格 对话框，选择 整行 ，在 选择类型 部分，选择 等于 ，在 特定类型 下拉列表，在文本框中输入单元格值，然后单击 OK 按钮。
另一个 选择特定的单元格 弹出对话框，显示选定的行数，同时，选定行中包含指定值的所有行均已选中。 看截图：
3。 按 按Ctrl + C 键复制选定的行，然后将其粘贴到所需的目标工作表中。
备注：如果要基于两个不同的单元格值将行移动到另一个工作表。 例如，根据“ Done”或“ Processing”单元格值移动行，您可以启用 Or 条件 选择特定的单元格 对话框如下图所示：
如果您想免费试用（30天）此实用程序， 请点击下载，然后按照上述步骤进行操作。
相关文章:
最佳办公生产力工具
热门特色: 查找、突出显示或识别重复项 | 删除空白行 | 合并列或单元格而不丢失数据 | 不使用公式进行四舍五入 ... | |
超级查询: 多条件VLookup | 多值VLookup | 跨多个工作表的 VLookup | 模糊查询 .... | |
高级下拉列表: 快速创建下拉列表 | 依赖下拉列表 | 多选下拉列表 .... | |
列管理器: 添加特定数量的列 | 移动列 | 切换隐藏列的可见性状态 | 比较范围和列 ... | |
特色功能: 网格焦点 | 设计图 | 大方程式酒吧 | 工作簿和工作表管理器 | 资源库 （自动文本） | 日期选择器 | 合并工作表 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊过滤器 （过滤粗体/斜体/删除线...）... | |
前 15 个工具集: 12 文本 工具 (添加文本, 删除字符，...） | 50+ 图表 类型 (甘特图，...） | 40+ 实用 公式 (根据生日计算年龄，...） | 19 插入 工具 (插入二维码, 从路径插入图片，...） | 12 转化 工具 (小写金额转大写, 货币兑换，...） | 7 合并与拆分 工具 (高级组合行, 分裂细胞，...） | ... 和更多 |
使用 Kutools for Excel 增强您的 Excel 技能，体验前所未有的效率。 Kutools for Excel 提供了 300 多种高级功能来提高生产力并节省时间。 单击此处获取您最需要的功能...
Office Tab 为 Office 带来选项卡式界面，让您的工作更加轻松
- 在Word，Excel，PowerPoint中启用选项卡式编辑和阅读，发布者，Access，Visio和Project。
- 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
- 每天将您的工作效率提高50％，并减少数百次鼠标单击！