Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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
Sorting 从Google工作表中的三列中编译一个按字母顺序排列的字符串列表_Sorting_Google Sheets_Concatenation_Transpose - Fatal编程技术网

Sorting 从Google工作表中的三列中编译一个按字母顺序排列的字符串列表

Sorting 从Google工作表中的三列中编译一个按字母顺序排列的字符串列表,sorting,google-sheets,concatenation,transpose,Sorting,Google Sheets,Concatenation,Transpose,我有一个谷歌电子表格,如下所示: Mediation 1 Mediation 2 Mediation 3 Mediation 4 ELL TIME Health Time Health ELL TIME Behavior =iferror(sort(join(",",filter(indirect(concatenate(address(row(),match("Mediation

我有一个谷歌电子表格,如下所示:

Mediation 1 Mediation 2 Mediation 3 Mediation 4
   ELL        TIME        Health       Time         
   Health       ELL        TIME         Behavior 
=iferror(sort(join(",",filter(indirect(concatenate(address(row(),match("Mediation 1",A$1:JA$1,0),4),":",address(row(),match("Mediation 2",A$1:JA$1,0),4))),indirect(concatenate(address(row(),match("Mediation 1 ",A$1:JA$1,0),4),":",address(row(),match("Mediation 2",A$1:JA$1,0),4)))<>""))))
我构建了一个“Mediation All”,它创建了一个逗号分隔的列表,列出了分配的每个中介。如下所示:

Mediation 1 Mediation 2 Mediation 3 Mediation 4       Mediation All
   ELL        TIME        Health       Time         ELL, Time, Health, 
   Health       ELL        TIME         Behavior    Health, Ell, Time, Behavior
我用于生成调解的代码如下所示:

Mediation 1 Mediation 2 Mediation 3 Mediation 4
   ELL        TIME        Health       Time         
   Health       ELL        TIME         Behavior 
=iferror(sort(join(",",filter(indirect(concatenate(address(row(),match("Mediation 1",A$1:JA$1,0),4),":",address(row(),match("Mediation 2",A$1:JA$1,0),4))),indirect(concatenate(address(row(),match("Mediation 1 ",A$1:JA$1,0),4),":",address(row(),match("Mediation 2",A$1:JA$1,0),4)))<>""))))
被替换为

ELL, Health, Time

变成

Behavior, ELL, Health, Time

这使得输入数据更容易。输入数据的人不必将相同的中介放入相同的列和行中

下面是一个简短的公式:
=join(“,”,transpose(Sort(UNIQUE)(transpose(A2:D2‘)’))

  • 过滤掉行上的重复值
  • 因为值在列中,所以我们必须对值进行排序
  • 出于某种原因,如果不重新转置排序列表,我们就不能使用
    join

    • @daniel公式似乎有效。如果不希望同时返回“TIME”和“TIME”,请将公式更改为:

      =join(",",TRANSPOSE(Sort(UNIQUE(LOWER(transpose(A2:D2))))))
      
      但是,这将以小写形式返回所有内容(ell、health、time)。 或者,如果您对已连接到单个单元格中的内容没有异议,只想删除DUP并将其按字母顺序排列,请使用:

      =连接(“,”,排序(唯一(较低)(转置(修剪(拆分($A5,”)))))))


      其中$A5是您的连接单元。

      我不清楚您想要实现什么。首先,我不能让你的公式起作用。但我们假设你已经创建了所有的中介。我不清楚你想要实现什么。首先,我不能让你的公式起作用。但我们假设您已经创建了所有中介。你是不是只想把它按字母顺序放在一个单元格里?是否希望中介1到4下的现有数据实际更改为alpha顺序?你到底想得到什么。两者都有可能。你能澄清一下吗。如果你能分享你的电子表格也会很有帮助。我想在一个单元格中,按字母顺序排列。我不希望中介1到4下的数据更改为alpha顺序。我只想让Mediation All列下的单元格包含所有中介,但按字母顺序排列。