在Excel中將二進位數據轉換為字串數據

在Excel中將二進位數據轉換為字串數據

我在 Excel 上有一些原始數據,這些數據的組織方式不太容易閱讀。例如,對於顯示哪個使用者喜歡哪種顏色的表格:

        A      B        C       D       E
User | Red | Green | Orange | Blue | Yellow
A       0      1        0       1       0
B       0      0        1       1       0
C       1      0        0       0       1

因此,使用者 A 喜歡綠色和藍色,B 喜歡橙色和藍色,C 喜歡紅色和黃色。

這對我們很有用,因為我可以用它來計算頻率,但我還需要人類可讀形式的數據。

我想新增一列來說明使用者選擇的顏色,例如:使用者 A - 綠色 + 藍色。

但我似乎無法用CONCATENATE(IF(A2=1, $A$1), +, IF(B2=1, $B$1))等等來做到這一點,因為該IF函數在內部不起作用CONCATENATE。我也無法新增太多列,因為我的資料已經有多列。

是否有一個函數可以用來將此二進位資料轉換為適合列的乾淨字串?

答案1

您可以在沒有該CONCATENATE()功能的情況下執行此操作...

結果

=TRIM(IF(B2=1;B$1;"")&IF(C2=1;" "&C$1;"")&IF(D2=1;" "&D$1;"")&IF(E2=1;" "&E$1;"")&IF(F2=1;" "&F$1;""))

TRIM()如果使用者喜歡綠色而不喜歡紅色,函數會刪除可能出現的任何多餘空格。

答案2

如果您有 Office 365 / Excel 2016,則可以TEXTJOIN在陣列公式中使用函數:

=TEXTJOIN(" ",TRUE,IF(B2:F2=1,$B$1:$F$1,""))

由於這是一個數組公式,因此您需要按住ctrl+ 的shift同時點擊 來「確認」它enter。如果運算正確,Excel 會{...}在公式周圍放置大括號,如公式欄所示。

在此輸入影像描述

相關內容