导入范围公式缩短

问题描述 投票:0回答:1
=QUERY({ IMPORTRANGE('LİNK'!B2;'LİNK'!D1); IMPORTRANGE('LİNK'!B3;'LİNK'!D1); IMPORTRANGE('LİNK'!B4;'LİNK'!D1); 
IMPORTRANGE('LİNK'!B5;'LİNK'!D1); 
IMPORTRANGE('LİNK'!B6;'LİNK'!D1); 
IMPORTRANGE('LİNK'!B7;'LİNK'!D1); 
IMPORTRANGE('LİNK'!B8;'LİNK'!D1); 
IMPORTRANGE('LİNK'!B9;'LİNK'!D1); ...
....
....
....
....
IMPORTRANGE('LİNK'!B123;'LİNK'!D1) };"select * where Col1 is not null AND Col4 matches '.{4,}'")

名为 LINK 的页面的 B2:B 栏中有链接,我想使用 importrange 一次性导入所有链接。在名为 LINK 的页面的单元格 D1 中,写入将检索数据的页面范围,例如 TEST!B2:J200。 简而言之,转到所有链接并带来名为 TEST 的页面的 B2:J200 范围。我给的链接有效,但是我怎样才能缩短它?

google-sheets google-sheets-formula
1个回答
0
投票

使用此模式:

=let( 
  importMultipleRanges_; lambda(spreadsheet_ids; ranges_A1; let(i_;lambda(i;r;let(d;reduce(æ;sequence(5);lambda(f;n;if(iserror(f);importrange(i;upper(left(r;n))&lower(mid(r;n+1;99)));f)));filter(d;byrow(d;lambda(r;len(join("";r)))))));a;hstack(tocol(spreadsheet_ids);tocol(ranges_A1));y;max(bycol(a;lambda(l;index(ifna(xmatch("?*";to_text(l);2;-1))))));s;sequence(y);p;array_constrain(bycol(a;lambda(v;map(s;lambda(i;index(xlookup(i;s/(v<>"");v;;-1))))));y;columns(a));reduce(tocol(æ;2);sequence(counta(p)/2);lambda(r;i;vstack(r;i_(index(p;i;1);index(p;i;2))))))); 

  importMultipleRanges_('LİNK'!B5:B; 'LİNK'!D1) 
)

让()并且 lambda().

© www.soinside.com 2019 - 2024. All rights reserved.