Excel 转置函数
在使用Excel时,通常需要在工作表中切换或旋转单元格。最常见的方法是复制、粘贴数据到所需的单元格中。这种方法很耗时。 另一种切换和旋转单元格的方法是使用Excel的转置函数。 但是该函数会导致数据重复。如果不希望工作表中出现重复数据,可以使用自定义公式而不是使用内置的TRANSPOSE函数。
例如,在下面的参考图片中, 函数=转置(A24:B44)会获取单元格A24:B27的范围并将其水平排列 (参见下面的截图)。
什么是转置函数
Excel中的转置(TRANSPOSE)函数将垂直单元格范围的数据复制到水平单元格范围,或者反之(即改变水平范围到垂直范围的方向)。
简单来说,我们可以说这个函数“翻转”了给定单元格范围或Excel数组的位置:
- 当您使用垂直单元格范围时, 转置(TRANSPOSE)函数将改变垂直范围到水平范围的方向 。
- 当您使用水平单元格范围时, 转置(TRANSPOSE)函数将改变方向为垂直范围 。
换句话说,当数组被转置时,第一行被翻转,并成为新数组的第一列;同样,前一个数组的第二行成为新数组的第二列,第三行将被转换为第三列,以此类推。
在Excel中, 转置(TRANSPOSE)函数可以与单元格范围和数组一起使用 。尽管用户更喜欢使用转置范围,因为它们是动态的,即如果原始范围中的数据发生变化,转置(TRANSPOSE)数据将立即更新新范围中的数据。
语法
参数
array(必需) - 这个参数表示您想要从垂直变为水平或反之的数据。
返回值
转置(TRANSPOSE)函数通过将水平单元格范围转换为垂直范围或反之,返回一个单元格范围或数组。
使用转置函数的步骤
- 所选的转置范围必须与源范围相等。
- 输入的函数必须输入为数组公式。
- 要指定数组公式,应选择需要公式的所有单元格。
- 在选择单元格后,键入公式,例如,=TRANSPOSE(A1:A5)。
- 最后,按下Ctrl + Shift + Enter进行确认。
- 如果您想对转置公式进行任何更改,必须突出显示整个源数组,您可以进行编辑,编辑完成后,再次按下Ctrl + Shift + Enter键盘快捷键以确认更改。
- 确认后,您会注意到Excel会自动在函数周围放置花括号“{}”。花括号表示它是一个数组公式。
示例1:使用转置函数将单元格从垂直变为水平
按照以下步骤解决上述问题:
步骤1:选择与原始范围相同尺寸的空单元格
第一步是在Excel工作表中选择与原始范围相同尺寸的空单元格。但是要始终记住在另一个方向上选择相同尺寸的单元格。
例如,在下面的示例中,我们在这里纵向排列了十二个单元格:
所以我们将选择12个水平单元格,如下图所示:
这些空单元格是被转置单元格放置之后的位置。
步骤2:输入公式,即=TRANSPOSE(
在选择空单元格后,只需输入公式: =TRANSPOSE(
它会类似于下面的图像:
注意:您会注意到,即使您开始输入转置函数,这九个水平单元仍然被选中在您的Excel工作表中。
步骤3:输入要转置的单元格范围
下一步是输入您要转置的单元格范围。您可以通过指向和拖动鼠标光标来选择一组原始单元格,而不是输入。
在这个例子中,原始单元格的位置是从A23到C26。因此我们的公式变为: =TRANSPOSE (A23:C26)。在输入范围后,您会注意到 整个数组都用蓝色矩形框突出显示。
它看起来类似于下面的图像:
注意:在输入公式后,不要按下回车键,因为会显示#VALUE错误。停止输入,然后执行最后一步。
步骤4:同时按下CTRL+SHIFT+ENTER键
最后一步是同时按下CTRL+SHIFT+ENTER键,Excel会立即为您转置原始单元格。下面是使用TRANSPOSE()函数转置原始单元格后的输出。
注意:您会注意到大括号会自动添加到您的TRANSPOSE公式的开头和结尾,表示它是一个数组函数。
问题:现在问题是为什么只有按下CTRL + SHIFT + ENTER才起作用?
答案: 这个问题的答案是因为TRANSPOSE函数只用在数组公式中,这就是如何终止一个数组函数。数组公式适用于多个单元格。如果您还记得,在第1步中,您选择了多个单元格;因此,该公式将应用于多个单元格。
示例2:使用TRANSPOSE函数改变4行x6列的动态数组的方向
按照以下步骤将上述 4行x6列的动态数组 转置:
步骤1:选择空白单元格
要将4行x6列的水平范围转置为6行x4列的垂直范围, 选择24个空白单元格(6行4列) 。在本示例中,我们选择了单元格B4:C7的范围。
步骤2:输入公式并输入要翻转的单元格范围
选择空白单元格之后,只需输入公式并选择要翻转的单元格范围。您将得到以下公式。
=TRANSPOSE(B3:E8)
注意:一旦输入公式,您将会注意到一个夜间蓝色矩形框覆盖着您的数组。
它会看起来与下面的图片类似:
步骤3: 按住Ctrl+Shift+Enter以获取输出
最后一步是 按住CTRL+SHIFT+ENTER 键,并且Excel将立即 将原始的4行x6列动态数组转置为6行x4列的单元格范围 。
它将类似于下面的图片:
欧哦!现在我们已经了解了Excel工作表中的TRANSPOSE函数如何工作。您也可以将此函数与其他Excel公式集成。继续尝试一下。
要记住的要点
- 您无需手动输入整个单元格范围 。在输入=转置(之后,可以使用鼠标选择一组单元格。只需将光标放在第一个单元格上,然后将指针从范围的开始拖到选择的结束。但请记住,完成后不要按回车键(会引发#值错误);相反,按下CTRL+SHIFT+ENTER以获得结果。
- 转置()函数可以处理文本数据,并复制单元格格式 。但请记住,此函数会创建重复的数据。
转置替代方法-粘贴特殊选项
当您需要动态解决方案,能够在原始数据发生任何变化时自动更新翻转输出时,转置函数是合乎逻辑的选择。 然而,Excel提供了TRANSPOSE函数的简单替代方法,即“粘贴特殊”选项。 当您只需要一次性的转换时,它非常有用。您可以使用“粘贴特殊”轻松地翻转工作表数据的方向,而无需保留与源数据的链接。
按照以下步骤使用“粘贴特殊”选项来转置您的工作表数据:
- 通过按下CTRL + C键盘快捷键 选择源数据并将其复制。
-
将光标放在单元格上 ,从该单元格开始执行转置操作。在我们的案例中,我们选择了B11单元格。
-
转到Excel功能区的“主页”选项卡,并 单击剪贴板选项卡最左侧的“粘贴”下拉箭头 。
-
将显示以下下拉式粘贴选项。 选择转置(T)粘贴选项 。
-
Excel将转置数据并将其粘贴到所选单元格中 。
-
由于我们在两个位置上都有相同的数据,您可以删除原始数据,尽管这一步是可选的。
注意:确保选择一个单个单元格或一组单元格来粘贴转置数据。如果光标位于源数据单元格上,Excel会抛出错误:“无法粘贴该信息,因为复制和粘贴区域的大小和形状不同”