我想在谷歌表格中对几列进行排序,但是在其他列中没有匹配值的地方有空位。在Excel/Google表格中对空格进行排序
见我的例子:
开始:
c a z
a k d
d x f
e b m
x e b
排序:
a a
b b
c
d d
e e
f
k
m
x x
z
所以,这可能在谷歌片及/或Excel?如果可能,我宁愿使用Google电子表格。
我想在谷歌表格中对几列进行排序,但是在其他列中没有匹配值的地方有空位。在Excel/Google表格中对空格进行排序
见我的例子:
开始:
c a z
a k d
d x f
e b m
x e b
排序:
a a
b b
c
d d
e e
f
k
m
x x
z
所以,这可能在谷歌片及/或Excel?如果可能,我宁愿使用Google电子表格。
对于谷歌表尝试公式:
=ArrayFormula(IFERROR(VLOOKUP("r"&ROW(INDIRECT("A1:A"&COUNTUNIQUE(INDIRECT(myRange))))&"c"&TRANSPOSE(ROW(INDIRECT("A1:A"&COLUMNS(INDIRECT(myRange))))),{"r"&VLOOKUP(SORT(TRANSPOSE(SPLIT(CONCATENATE("_"&"_"&INDIRECT(myRange)),"_"))),{UNIQUE(SORT(TRANSPOSE(SPLIT(CONCATENATE("_"&"_"&INDIRECT(myRange)),"_")))),ROW(INDIRECT("A1:A"&COUNTUNIQUE(INDIRECT(myRange))))},2,0)&ARRAY_CONSTRAIN(SORT({TRANSPOSE(SPLIT(CONCATENATE("_c"&COLUMN(INDIRECT(myRange))*ROW(INDIRECT(myRange))^0),"_")),TRANSPOSE(SPLIT(CONCATENATE("_"&"_"&INDIRECT(myRange)),"_"))},2,1,1,1),ROWS(INDIRECT(myRange))*COLUMNS(INDIRECT(myRange)),1),SORT(TRANSPOSE(SPLIT(CONCATENATE("_"&"_"&INDIRECT(myRange)),"_")))},2,0)))
,使其工作首先要命名的区域称为myRange
和粘贴进去的期望范围内的地址:
请参阅我的sample file与解决方案。
看起来不错,谢谢!我将深入研究这个公式,看看到底发生了什么;-) – z00l
哪一个excel或googlesheets?他们是两个不同的东西。 –
@TimWilkinson我可以同时使用,但我更喜欢谷歌电子表格。将更新我的问题。 – z00l