【问题标题】:In Google Sheets, how to transpose multiple column headers and data into a single column of multiple row labels and data在 Google 表格中,如何将多个列标题和数据转换为包含多个行标签和数据的单列
【发布时间】:2019-11-06 02:32:55
【问题描述】:

不确定用什么合适的电子表格术语来表述这个。

如何转这个:

+-----------+-----------+-----------+...
|Username   |First Name |Second Name|...
+-----------+-----------+-----------+...
|Uname1     |FName1     |SName1     |...
+-----------+-----------+-----------+...
|Uname2     |FName2     |SName2     |...
+-----------+-----------+-----------+...
|Uname3     |FName3     |SName3     |...
+-----------+-----------+-----------+...
:           :           :           :

进入这个?:

+-----------+-----------+
|Username   |Uname1     |
+-----------+-----------+
|First Name |FName1     |
+-----------+-----------+
|Second Name|SName1     |
+-----------+-----------+
|Username   |Uname2     |
+-----------+-----------+
|First Name |FName2     |
+-----------+-----------+
|Second Name|SName2     |
+-----------+-----------+
:           :           : 

省略号表示多列/多行继续。

我尝试在谷歌上搜索将列转换为行,但找不到问题的确切解决方案。

【问题讨论】:

  • 选择整个范围;复制;移动到电子表格上的新位置;选择性粘贴> 转置粘贴。
  • @Tedinoz - 不,那行不通。需要转置多列标题+数据,全部转置为标签和数据两列。
  • 道歉;我错过了保留两列的微妙之处。 @player0 用一个巧妙的公式来救援。

标签: google-sheets google-sheets-formula transpose array-formulas google-sheets-query


【解决方案1】:

尝试:

=ARRAYFORMULA(SPLIT(TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(
 IF(A2:C<>"", "♦"&A1:C1&"♥"&A2:C, )),,999^99)),,999^99), "♦")), "♥"))

【讨论】:

  • 有没有办法在每个新组之前添加一个新行?例如,在这个例子中,每个“用户名”之前都有一个新行
  • 太棒了。非常感谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-24
  • 2021-12-23
  • 2016-07-06
  • 1970-01-01
  • 1970-01-01
  • 2020-11-06
相关资源
最近更新 更多