Excel-将行单元格转换为逗号分隔的列表

Excel-将行单元格转换为逗号分隔的列表,excel,Excel,我有一张包含两行的excel表格。每行都将数据插入到多个列中。我需要的是根据所有逻辑生成一个逗号分隔的列表,如果是上午08:00,那么0如果是下午,那么1如下: 0,1,0,1,0,0,0,0 在第二行我有相同的,但这里我可以有空单元格,如果我有一个空单元格,那么我应该得到如下结果: 0.8,0.8,0.7,0.8,,,,, 有线索吗 如果您愿意将结果作为新文件获得,则可以将电子表格导出/保存为CSV文件。使用If公式将第一行转换为0和1,然后将文件转换为CSV文件。对于第一行,您可以使用T

我有一张包含两行的excel表格。每行都将数据插入到多个列中。我需要的是根据所有逻辑生成一个逗号分隔的列表,如果是上午08:00,那么0如果是下午,那么1如下:

0,1,0,1,0,0,0,0
在第二行我有相同的,但这里我可以有空单元格,如果我有一个空单元格,那么我应该得到如下结果:

0.8,0.8,0.7,0.8,,,,,
有线索吗


如果您愿意将结果作为新文件获得,则可以将电子表格导出/保存为CSV文件。

使用If公式将第一行转换为0和1,然后将文件转换为CSV文件。

对于第一行,您可以使用TextJoin和Round的组合。上午8点取整为0,下午8点取整为1

=TEXTJOIN(",",FALSE,ROUND(A1:H1,0))
第二排可以加上

=TEXTJOIN(",",FALSE,A2:H2)
除了基于公式的解决方案外,您还可以使用Excel 2010及更高版本中提供的PowerQuery来执行此操作

逻辑是将数据添加到power query editor,使用Transform选项卡下的Replace Values功能替换08:00 a。M替换为1,并替换为晚上8:00。M使用0,然后使用“转换”选项卡下的“合并列”功能以逗号作为分隔符合并所有列。结果可能如下所示。默认情况下,您可以将结果加载到新工作表,也可以创建到此查询的连接并将其加载到特定位置,但限制是它必须位于表中

以下是全通查询m幕后代码仅供参考。所有功能都使用内置功能执行

let
    Source = Excel.CurrentWorkbook(){[Name="YourTable"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type any}, {"Column2", type any}, {"Column3", type any}, {"Column4", type any}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", type text}}),
    #"Replaced Value" = Table.ReplaceValue(#"Changed Type","08:00 a. m.",1,Replacer.ReplaceValue,{"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8"}),
    #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value","08:00 p. m.",0,Replacer.ReplaceValue,{"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8"}),
    #"Merged Columns" = Table.CombineColumns(Table.TransformColumnTypes(#"Replaced Value1", {{"Column1", type text}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", type text}}, "en-AU"),{"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8"},Combiner.CombineTextByDelimiter(",", QuoteStyle.None),"Merged")
in
    #"Merged Columns"

这就是有效的方法,想做一个答案,这样我就可以把它标记为正确的,我必须在一个字段中有逗号分隔的值,你说的字段是什么意思?