问题描述
我正在尝试将 Binance 费用 (https://www.binance.com/en/fee/depositFee) 中的表格导入 Google 表格(购买我正在尝试导入 MS Excel)。
现在,我有这样的数据:
=IMPORTHTML("https://www.binance.com/en/fee/depositFee"; "table"; 0)
谢谢!!!
解决方法
一种解决方案是,按照您的方式导入数据后,将每一行拆分如下
=iferror(transpose(flatten(arrayformula(transpose(split(transpose(C3:F3),char(10)))))),"")
您将获得多个 4 列块。最后,您可以像这样对数据进行分组,假设最多有 4 个块:
=query({query( 'raw data'!A3:V,"select A,B,G,H,I,J");query('raw data'!A3:V,K,L,M,N");query('raw data'!A3:V,O,P,Q,R");query('raw data'!A3:V,S,T,U,V")},"select * where Col3<>'' order by Col1")
https://docs.google.com/spreadsheets/d/1JCjJywK9qPprynX2byvAnU7jS4S9cAYmHAfLcuyW3oQ/edit?usp=sharing
,我可以提供一个解决方案*,在一个单元格中使用公式处理您的 importrange
数据(显示在下面的单元格 H1
中):
=arrayformula(
{query(IFERROR(array_constrain(
{"Coin/Token","Full Name","Network","Minimum Withdrawal","Deposit fee","Withdrawal Fee";
flatten(split(rept("|"&A3:A,LEN(regexreplace($C3:$C,"[^\n]",""))+1),"|")),flatten(split(rept("|"&B3:B,flatten(split(C3:C,CHAR(10))),flatten(split(D3:D,flatten(split(E3:E,flatten(split(F3:F,CHAR(10)))
},max(IF(A3:A<>"",""))+1,))*COUNTA(A3:A),6),),"where Col1 is not null",0)
})
它扩展 C
、D
、E
和 F
列中的单元格,其中 C
中有多个项目。它还重复列 A
和 B
中的值。
列 D
和 F
正确转换为数字。
- 公式更新了 Mike Steelson 增强功能和 player0
LEN
/REGEXREPLACE
。
您只需要:
=INDEX(TRIM(TRANSPOSE(SPLIT(FLATTEN(QUERY({REPT(ARRAY_CONSTRAIN(
IMPORTHTML("https://www.binance.com/en/fee/depositFee","table",1),9^9,2)&
"×",1+LEN(REGEXREPLACE(INDEX(""&
IMPORTHTML("https://www.binance.com/en/fee/depositFee",3),"[^\n]+",))),REGEXREPLACE(QUERY(
IMPORTHTML("https://www.binance.com/en/fee/depositFee",1)&
"×","select Col3,Col4,Col5,Col6","\n","×")},9^9)),"×"))))