Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将行转换为列excel_Excel_Excel Formula - Fatal编程技术网

将行转换为列excel

将行转换为列excel,excel,excel-formula,Excel,Excel Formula,我希望将行转置为列,我尝试了转置(数组),但未能达到预期的结果。 这是我期待的样本数据和预期结果 样本数据: 预期结果: 谢谢,TDLR:手动创建表格列和行标题。然后使用内部的index()match()函数加载值 方法: 假设“数字”文本为A1,数据填充为A2:C15 [创建表格列和行标题] 选择A2:A15>复制>然后粘贴到另一个空表/文件>粘贴>然后选择“删除重复项”>复制结果>然后粘贴到单元格E2:E5(与原始数据表相同的表) 对B列执行相同操作,但需要将其转置: 选择B2:B15>

我希望将行转置为列,我尝试了转置(数组),但未能达到预期的结果。 这是我期待的样本数据和预期结果

样本数据:


预期结果:


谢谢,

TDLR:手动创建表格列和行标题。然后使用内部的index()match()函数加载值

方法: 假设“数字”文本为A1,数据填充为A2:C15


  • [创建表格列和行标题]
  • 选择A2:A15>复制>然后粘贴到另一个空表/文件>粘贴>然后选择“删除重复项”>复制结果>然后粘贴到单元格E2:E5(与原始数据表相同的表)

    对B列执行相同操作,但需要将其转置:

    选择B2:B15>复制>然后粘贴到另一张纸/文件>粘贴>然后选择“删除重复”>复制结果>然后右键单击F1>粘贴特殊:转置

    现在您应该有了表的列和行标题


  • [使用2个标准索引匹配(参考)+IFEROR(如果未找到,则显示null)。]
  • 将其放入F2,然后拖动至K5

    =IFERROR(索引($C$2:$C$15,匹配(1,索引($E2=$A$2:$A$15)*(F$1=$B$2:$B$15),0,1),0)),”)

    完成了

    p/s:了解索引匹配的工作原理。。只需要开始阅读index()match()的简单示例。。这里的公式是相同的,但有额外的技巧


    希望能有帮助。(:

    TDLR:手动创建表列和行标题。然后使用内部的index()match()函数加载值

    方法: 假设“数字”文本为A1,数据填充为A2:C15


  • [创建表格列和行标题]
  • 选择A2:A15>复制>然后粘贴到另一个空表/文件>粘贴>然后选择“删除重复项”>复制结果>然后粘贴到单元格E2:E5(与原始数据表相同的表)

    对B列执行相同操作,但需要将其转置:

    选择B2:B15>复制>然后粘贴到另一张纸/文件>粘贴>然后选择“删除重复”>复制结果>然后右键单击F1>粘贴特殊:转置

    现在您应该有了表的列和行标题


  • [使用2个标准索引匹配(参考)+IFEROR(如果未找到,则显示null)。]
  • 将其放入F2,然后拖动至K5

    =IFERROR(索引($C$2:$C$15,匹配(1,索引($E2=$A$2:$A$15)*(F$1=$B$2:$B$15),0,1),0)),”)

    完成了

    p/s:为了理解索引匹配是如何工作的……只需要开始阅读index()match()的简单示例……这里的公式是相同的,但有额外的技巧


    希望有帮助。(:

    这可以通过两种方式实现

    使用标准公式:在这种情况下,您将使用标准公式,但要使其起作用,您需要一个额外的列

    首先,您需要在数据的开头插入一个额外的列,将字段NUMBER和NAME的值连接在一起

    然后,为了获取数据,您可以使用一个VLOOKUP来搜索连接的文本,如果找到,将获得值。我们将其与一个IFERROR相结合,以显示
    (如果没有找到)

    =IFERROR(VLOOKUP($B19&C$18;$A$1:$D$15;4;FALSE);"")
    
    正如你在上图中看到的那样,这将起作用

    使用数组公式:这种方法是一个更复杂的公式,但好处是不需要添加额外的列

    我们在数组模式下组合匹配和索引以获得所需的值,如果未找到任何内容,则使用IFERROR显示
    “”

    我使用的公式是:

    =IFERROR(INDEX($C$2:$C$15;MATCH($B22&C$21;$A$2:$A$15&$B$2:$B$15;0));"")
    
    注意::因为这是一个数组公式,所以必须使用CTRL+SHIFT+ENTER输入,否则将无法使用

    我已经将这两个样本上传到我的Gdrive,以防你想检查公式以及它们是如何工作的


    希望这能有所帮助。

    这可以通过两种方式实现

    使用标准公式:在这种情况下,您将使用标准公式,但要使其起作用,您需要一个额外的列

    首先,您需要在数据的开头插入一个额外的列,将字段NUMBER和NAME的值连接在一起

    然后,为了获取数据,您可以使用一个VLOOKUP来搜索连接的文本,如果找到,将获得值。我们将其与一个IFERROR相结合,以显示
    (如果没有找到)

    =IFERROR(VLOOKUP($B19&C$18;$A$1:$D$15;4;FALSE);"")
    
    正如你在上图中看到的那样,这将起作用

    使用数组公式:这种方法是一个更复杂的公式,但好处是不需要添加额外的列

    我们在数组模式下组合匹配和索引以获得所需的值,如果未找到任何内容,则使用IFERROR显示
    “”

    我使用的公式是:

    =IFERROR(INDEX($C$2:$C$15;MATCH($B22&C$21;$A$2:$A$15&$B$2:$B$15;0));"")
    
    注意::因为这是一个数组公式,所以必须使用CTRL+SHIFT+ENTER输入,否则将无法使用

    我已经将这两个样本上传到我的Gdrive,以防你想检查公式以及它们是如何工作的


    希望这有帮助。

    这不是真正的转置方法。我认为你必须使用
    VBA
    例程或
    Pivot table
    来实现你的目标。这不是真正的转置方法。我认为你必须使用
    VBA
    例程或
    Pivot table
    来实现你的目标。为了增加这个解决方案,sm所有的改进可能是使用一个公式来删除重复项,例如,如果原始数据在单元格A1:C15中,而“结果”表标题(Number->…->ExtCode)在单元格G1:M1中,则可以在单元格G2中使用以下数组公式(Ctrl+Shift+Enter)来返回唯一值:
    =IFERROR(INDEX($a$1:$a$15,MATCH(0,COUNTIF))($G$1:G1,$A$1:$A$15),0),“”)
    感谢您提供的有用的独特列表数组公式。非常感谢。| | p/s:我正在这样做