將 2 列中的值與唯一編號結合。進入一個細胞?

將 2 列中的值與唯一編號結合。進入一個細胞?

我希望你們都有美好的一天。我有一個小問題想問你們。我正在準備一份報告,需要不同工作表的意見。當我將這些資訊合併到一張紙中時,會出現以下類型的排列。

問題

現在我還需要將此資訊與其他來源進行比較,這需要從 col B 和 C 中獲取資訊並根據 col 中的唯一值合併到一個單元格中。 A. 這是我正在尋找的答案

預期答案

誰可以幫我這個事?

答案1

這需要一些準備。

  1. 第一個Excel應該是這樣的:

第一個文件

  1. 第二個:


第二個文件

這些編輯很容易透過公式 + ctrl + Enter 的選擇空白技巧來取消合併,請參閱這裡如果你不知道怎麼做


然後,您需要在第一列中新增一個附加列,公式如下: =B8&" : "&C8 這將傳回「Inst tag -a : Constraint pt-a」。然後,我們需要一個陣列公式來匹配我們使用其各自伺服器創建的第三列中的每個值。數組公式,使用 CTRL+SHIF+ENTER 輸入! =VLOOKUP(D8,IF($A$20:$A$27=A8,$B$20:$C$27),2,FALSE)

$b$20:$c$27 是您使用「inst tag...」進行 vlookup 的資料的位置
$A$20:$A$27 應該是第二個檔案中引用系統的位置。
和 A8,其中系統在第一個檔案的這一行中被引用。

而且...瞧...它有效...

如果你是新手,這相當複雜,所以請告訴我你是否能做到。

答案2

您可以使用Power Query 適用於 Excel 2010+

一旦開發了此查詢,您就可以在新增資料時輕鬆更新/刷新。

  • 從 Excel:從表格/範圍取得資料(或 Excel 2010-2013 中的等效項)
  • 在 PQ 編輯器中:選擇Subsystem列並Fill --> Down
    • *這將填入第一列中的空白行
  • 選擇第 2 列和第 3 列
    • 合併列" : "作為分隔符
  • 選擇第 1 列
    • 透過...分組
      • 新列名稱合併
      • 手術: 所有行
  • 新增列
    • 公式:=Table.Column([分組],"合併")
  • 選擇新“自訂”列頂部的雙向箭頭

    • 提取值
    • 使用特殊字元連接:#(如果) 這是換行符
  • 關閉並加載

在 Excel 工作表上 - 設定第 1 列格式以進行垂直置中 - 設定第 2 列格式以進行自動換行

在此輸入影像描述

除了輸入自訂列的公式之外,所有操作都可以從 UI 完成。但這裡是 M 代碼:

M程式碼

let
    Source = Excel.CurrentWorkbook(){[Name="Table4"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Subsystem No.", type text}, {"Inst. Tag", type text}, {"Constraint", type text}}),
    #"Filled Down" = Table.FillDown(#"Changed Type",{"Subsystem No."}),
    #"Merged Columns" = Table.CombineColumns(#"Filled Down",{"Inst. Tag", "Constraint"},Combiner.CombineTextByDelimiter(" : ", QuoteStyle.None),"Merged"),
    #"Grouped Rows" = Table.Group(#"Merged Columns", {"Subsystem No."}, {{"Grouped", each _, type table [#"Subsystem No."=text, Merged=text]}}),
    #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.Column([Grouped],"Merged")),
    #"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), "#(lf)"), type text})
in
    #"Extracted Values"

相關內容