如何在Excel中根据单元格值将整行移动到活动工作表的底部?


本教程将向您展示如何使用简单而强大的技术根据预定条件重新排列 Excel 电子表格中的行。在许多情况下,需要对 Excel 数据进行排序或重新排列。例如,为了优先考虑或将特定行与其余数据分开,您可能希望将它们放在工作表的底部。本教程的主要目标是通过选择要根据单元格值重新定位的行来实现此目的。

我们将假设您对 Excel 及其功能有基本的了解,然后开始学习本课程。到课程结束时,您将能够有效地组织 Excel 中的数据,因为您将学习如何根据单元格值将整行移动到底部。然后让我们开始吧!

根据单元格值将整行移动到活动工作表的底部

在这里,我们将首先创建一个 VBA 模块,然后运行它以完成任务。因此,让我们看看一个简单的过程,了解如何根据 Excel 中的单元格值将整行移动到活动工作表的底部。

步骤 1

考虑一个 Excel 工作表,其中工作表中的数据类似于下图。

首先,右键单击工作表名称,然后选择“查看代码”以打开 VBA 应用程序。

右键单击 > 查看代码。

步骤 2

然后单击“插入”,选择“模块”,然后将以下代码复制到文本框中。

插入 > 模块 > 复制。

代码

Sub MoveToEnd()
   Dim xRg As Range
   Dim xTxt As String
   Dim xCell As Range
   Dim xEndRow As Long
   Dim I As Long
   On Error Resume Next
   If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
   Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
   End If
lOne:
   Set xRg = Application.InputBox("Select range:", "Move Based Value", xTxt, , , , , 8)
   If xRg Is Nothing Then Exit Sub
   If xRg.Columns.Count > 1 Or xRg.Areas.Count > 1 Then
      MsgBox " Multiple ranges or columns have been selected ", vbInformation, "Move Based Value"
      GoTo lOne
   End If
   xEndRow = xRg.Rows.Count + xRg.Row
   Application.ScreenUpdating = False
   For I = xRg.Rows.Count To 1 Step -1
      If xRg.Cells(I) = "Yes" Then
         xRg.Cells(I).EntireRow.Cut
         Rows(xEndRow).Insert Shift:=xlDown
      End If
   Next
   Application.ScreenUpdating = True
End Sub

在 VBA 代码中,“Done”是您将根据其移动整行的单元格值。您可以根据需要更改它。

步骤 3

然后单击 F5 运行模块。然后选择单元格范围并单击“确定”以完成任务。

这就是如何在 Excel 中根据单元格值将整行移动到活动工作表的底部的方法。

结论

在本教程中,我们使用了一个简单的示例来演示如何在 Excel 中根据单元格值将整行移动到活动工作表的底部,以突出显示特定数据集。

更新于: 2023年8月24日

609 次查看

开启你的 职业生涯

完成课程获得认证

开始学习
广告

© . All rights reserved.