如何在Excel中水平颠倒列的顺序

  • Share This
Hugh West

颠倒顺序只是意味着交换列中的数值。 因此表示列中的最后一项应该是相反顺序中的第一个数值,倒数第二项应该是第二个数值,以此类推,翻转的列中的第一个数值是第一个数值。 水平位置被定义为垂直于平面的平坦或水平,与平面成一个正确的角度。在这篇文章中,我们将展示一些不同的有效方法来扭转Excel中的水平列的顺序。

下载实践工作手册

你可以下载工作手册,用它们进行练习。

水平方向上的列的倒序.xlsm

在Excel中水平颠倒列次序的3种有效方法

在与 微软Excel 我们可能需要对之前制作的数据集进行重新排序或重新安排。 我们可以通过以所需的顺序重新创建数据集来做到这一点。 但这项工作很耗时。 Excel有一些惊人的功能和工具,也有一些内置的公式,只需点击几下就可以完成这项工作。

例如,我们将使用以下数据集,其中包含一些产品名称和产品的价格。 现在,我们需要重新排列这些列,把它们颠倒过来,然后把它们放到一个水平的顺序。

在Excel中插入排序和移位命令以水平颠倒列的顺序

分类 是一个短语,用来描述按照一定的顺序排列数据的行为,使其更简单地收集数据。 在电子表格中对数据进行排序时,可以对数据进行重新排列,以快速定位数据。 任何甚至更多的数据字段都可以用来对一个区域或数据列表进行排序。 Excel有排序命令来重新排列数据。 我们将使用排序命令来反转数据。

转位 生成一个新的数据源,初始数据文件的行和列被颠倒过来。 它立即生成新的变量名称,并提供一个新的值标签的列表。 Excel有一个 转置功能 我们将用它来制作水平顺序的列。

为此,我们需要一个帮助列,它将帮助我们理解列的反转。

让我们按照程序来使用excel中的排序和转置功能来水平扭转列的顺序。

步骤。

  • 首先,选择帮助列,看看使用排序命令后会发生什么。
  • 第二,去 数据 在你的电子表格的功能区中的选项卡。
  • 第三,从 排序 & 筛选 在 "类别 "中,点击下面屏幕截图中的图标。

  • 这将打开一个 分类警告 对话。
  • 然后,从' 你想做什么? ',选择 扩大选择范围 .
  • 此外,点击 分类 按钮来对它们进行完美的分类。

  • 通过这样做,你可以看到,现在的列只是反过来了。

  • 我们不再需要帮助列了,所以删除帮助列。
  • 现在,选择整个数据集,并通过按以下方式复制它们 Ctrl + C 键盘快捷键。
  • 然后,去到 首页 选项卡。
  • 剪贴板 类别,点击 粘贴 下拉菜单。
  • 并且,选择 粘贴专用 .

  • 另外,你也可以在你想放水平倒序列的选定单元格上点击右键,然后选择 粘贴专用 .
  • 你可以使用键盘上的快捷键来代替这样做 Ctrl + Alt + V 以打开 粘贴专用 对话。

  • 这将显示 粘贴专用 对话框。
  • 现在,勾选 转位 框中,并点击 认可 按钮来完成这一过程。

  • 或者,你可以直接点击截图中所示的图标,使各栏按水平顺序排列。

  • 最后,你可以看到你想要的顺序。 只需按照上述步骤,你就可以水平地扭转列的顺序。

阅读更多:如何在Excel中把行转为列(5种实用方法)

类似读物

  • 如何根据Excel中的标准将行转为列?
  • 掌握了这一点,我们就能在工作中更有效地利用这些资源。
  • 如何用Excel VBA将行转为列(4个理想的例子)?
  • 在Excel中把多列转为一列(3种便捷的方法)

2.用Excel函数水平颠倒列的顺序

我们可以使用excel的内置函数将数据集按水平方向上的列的顺序重新排列。 我们将看到两种不同的公式方法。

2.1. 应用 INDEX & TRANSPOSE 函数

首先,我们将使用以下组合 索引 , 润泽 ,以及 栏目 功能来反转各列。 索引 函数给出了一个表格或数值范围的结果或对结果的引用。 润泽 栏目 然后,我们将使用 输送 我们来看看使用公式的程序。

步骤。

  • 首先,我们将在原始列旁边复制列,保持单元格值为空,以查看公式是否正常工作。
  • 然后,选择单元格 E5 并将以下公式放入该单元格。
=index($b$5:$c$8,行(b5:$b$8),列($b$5:b5))

  • 然后,按 进入 在键盘上。

  • 拖动 填充手柄 或者,将公式复制到该范围内。 自动填表 的范围,双击 加号 ( + ) 符号。

  • 此外,为了在整个范围内复制该公式,拖动 填充手柄 向右。

  • 最后,你将能够看到,这些列现在是反过来的。

🔎 这个公式是如何工作的?

  • columns($b$5:b5)。 搜索并返回指定单元格引用的列号。
  • ROWS(B5:$B$8)。 查询并返回每个引用或数组中的行数。
  • index($b$5:$c$8,rows(b5:$b$8),columns($b$5:b5))。 这将采取整个数据范围,然后将各列倒置。
  • 现在,我们需要将各列设置为水平顺序。 为此,选择一个你想重新排列数据集的单元格。
  • 然后,用公式代替。
=transpose(e4:f8)

  • 新闻 进入 而公式将显示在公式栏中。
  • 最后,你得到了结果的订单。

2.1. 使用SORTBY & TRANSPOSE函数

第二,我们将结合 SORTBY功能 润泽 函数来获取列的反向顺序。 绍特比 函数对一个区域或数组的元素进行排序,使用一个公式和来自另一个区域或范围的元素。 然后,我们将使用 输送 让我们按照下面的步骤来做。

步骤。

  • 同样地,在前面的方法中,复制没有数值的列来比较列。
  • 之后,在那里输入以下公式。
=sortby($b$5:$c$8,row(b5:b8),-1)

  • 此外,为了完成操作打 进入 钥匙。

🔎 这个公式是如何工作的?

  • ROW(B5:B8)。 这将检查并获取每个引用或数组中的行数。
  • sortby($b$5:$c$8,row(b5:b8),-1)。 通过将它们全部反转来对范围进行排序。 -1 将把结果放在整个单元格范围内。
  • 你现在可以看到,现在各列的顺序是相反的。
  • 此外,为了使数据按水平顺序排列,请键入以下公式。
=transpose(e4:f8)

  • 之后,点击 进入 来看结果。

  • 就这样,你可以在你的电子表格上看到想要的结果。

阅读更多。 如何在Excel中把列移到行上(6种方法)

3.应用VBA宏在Excel中水平倒置列的顺序

Excel VBA 我们可以使用以下代码 Excel VBA 让我们来看看使用VBA代码正确完成工作的步骤。 为此,我们使用与之前相同的数据集。

步骤。

  • 首先,到 开发商 选项卡。
  • 其次,从 编码 类别,点击 视觉基础 以打开 Visual Basic编辑器 或者按 Alt + F11 以打开 Visual Basic编辑器 .

  • 与其这样做,你可以在你的工作表上点击右键,然后转到 查看代码 这也将带你到 Visual Basic编辑器 .

  • 这将出现在 Visual Basic编辑器 我们在这里编写代码,从一个范围中创建一个表。
  • 接下来,复制并粘贴 VBA 代码如下所示。

VBA代码。

 Sub Reverse_Columns_Horizontally() Dim ran As Range Dim ary As Variant Dim int1 As Integer, int2 As Integer, int3 As Integer On Error Resume Next xTitleId = "Reverse Columns" Set ran = Application.Selection Set ran = Application.InputBox("Range", xTitleId, ran.Address, Type:=8) ary = ran.FaceUpdating = False Application.Calculation =xlCalculationManual For int2 = 1 To UBound(ary, 2) int3 = UBound(ary, 1) For int1 = 1 To UBound(ary, 1) / 2 xTemp = ary(int1, int2) ary(int1, int2) = ary(int3, int2) ary(int3, int2) = xTemp int3 = int3 - 1 Next Next ran.Formula = ary Application.ScreenUpdating = TrueApplication.Calculation = xlCalculationAutomatic Range("B10:F11").Value = WorksheetFunction.Transpose(Range("B4:C8") ) End Sub 
  • 之后,通过点击运行代码。 擦肩而过 按钮或按键盘快捷键 F5 .

  • 这将出现在一个我们通过写一些代码行制作的窗口中。 该窗口将询问范围。 选择范围,然后点击 认可 来完成这个程序。

  • 而且,你可以看到,数据集的列现在是反过来的水平顺序。

VBA代码解释

 Sub Reverse_Columns_Horizontally() Dim ran As Range Dim ary As Variant Dim int1 As Integer, int2 As Integer, int3 As Integer 

在这里,我们启动程序,并为该程序命名为 横向反转列数 然后,只需声明我们需要执行代码的变量名。

 xTitleId = "反向列" Set ran = Application.Selection Set ran = Application.InputBox("范围", xTitleId, ran.地址, Type:=8) ary = ran.公式 Application.ScreenUpdating = False Application.计算 = xlCalculationManual 

这几行是在制作窗口,它将询问我们想要反转的范围。 在那里我们定义标题框为 反转柱 和盒子的名称为 范围 .

 For int2 = 1 To UBound(ary, 2) int3 = UBound(ary, 1) For int1 = 1 To UBound(ary, 1) / 2 xTemp = ary(int1, int2) ary(int1, int2) = ary(int3, int2) ary(int3, int2) = xTemp int3 = int3 - 1 Next Next ran.公式 = ary Application.screenUpdating = True Application.Calculation =xlCalculationAutomatic 

这个代码块正在颠倒列。

 Range("B10:F11").Value = WorksheetFunction.Transpose(Range("B4:C8")) 

这行代码正在使各列按水平顺序排列。

阅读更多:VBA将Excel中的多列转为行(2种方法)。

总结

上述方法将协助你 在Excel中水平颠倒列的顺序 希望这对你有帮助!如果你有任何问题、建议或反馈,请在评论区告诉我们。 或者你可以看一下我们的其他文章。 淘宝网 博客!

Hugh West is a highly experienced Excel trainer and analyst with over 10 years of experience in the industry. He holds a Bachelor's degree in Accounting and Finance and a Master's degree in Business Administration. Hugh has a passion for teaching and has developed a unique teaching approach that is easy to follow and understand. His expert knowledge of Excel has helped thousands of students and professionals worldwide improve their skills and excel in their careers. Through his blog, Hugh shares his knowledge with the world, offering free Excel tutorials and online training to help individuals and businesses reach their full potential.