我想将一个大的逗号分隔列表分成几个小于1000个字符的较小列表,而不会切断实际单词。
我一直在使用
=MID($A2,IF(COLUMN()-2=0,1,((COLUMN()-2)*1000)+1),1000)
但是,使用此公式,单词被截断了。例如,一个列表将以“ train”结尾,而下一个列表将以“ ing”开头。
以下是示例电子表格供参考: https://docs.google.com/spreadsheets/d/1HB82YQNjhpAwMJVCoTWjLKT9PHW32G0-FkAhK-lWiG8/edit?usp=sharing
答案 0 :(得分:1)
查看您的Google文档,我认为这是一个XY问题。 (https://en.wikipedia.org/wiki/XY_problem)
与其帮助您根据问题拆分长字符串,不如帮助您将单词列表连接到一系列字符串(每个字符串少于1000个字符),要容易得多。它通过为每个单词分配一个组号来工作,以确保加入时这些组少于1000个字符。然后将每个组中的单词合并在一起。
=LEN(A3)+1
填写(单词的长度加逗号)0
(累积长度开始)=IF(C2+B3<1000,C2+B3,B3)
填充(累积长度,重置为1000)=IF(OR(C3<C2,C2=0),D1+1,D1)
填写(组计数器)1
,2
,3
填满=TEXTJOIN(",",TRUE,OFFSET($A$3,MATCH(E$1,$D$3:$D$1002,0)-1,0,COUNTIF($D$3:$D$1002,E$1),1))
填满=LEN(E2)
进行检查在最终公式中,您可以根据需要将对E$1
的引用替换为COLUMN()-4
。