3

我的电子表格中有=query(importrange(...);"select * where Col1>' '")公式。 Importrange()本身可以正常工作,完全按原样从源 spreadhseet 加载所有单元格。但是 Col7 包含很少的文本单元格,但主要是数字,并且在应用 query() 时 - 数字保持原样,但文本被替换为空白。我尝试options no_format在查询末尾添加,没有区别。

这是 Col7 的内容,第一行被替换为空白:

  • 自由的
  • 41,25
  • 34,25
  • 34,25
  • 48,25
  • 41,25
4

3 回答 3

5

QUERY不会按设计返回具有混合数据类型的列:

在单个列中混合数据类型的情况下,多数数据类型确定列的数据类型以用于查询目的。少数数据类型被视为空值。

解决方法将取决于您以后希望如何使用数据,以及您愿意做出哪些妥协。例如,您可以相当轻松地将整个数据集转换为文本字符串,以便保留所有内容,但是您的所有数字也将是文本字符串。

如果您需要将数字保留为数字,通常最好的选择是将整个数据集导入电子表格中的某个位置(可能在隐藏的工作表上),然后在其上使用 QUERY 的替代方法(即 FILTER)。

于 2014-11-23T22:37:07.237 回答
0

您可以对需要为混合数据类型的列使用 vlookup。查询唯一的行标识符,然后查找其余的。我经常使用以下公式:

=arrayformula(if(isblank(A:A), "", vlookup(A:A, search_range, col_index, FALSE)))
于 2021-11-30T18:05:55.407 回答
-1

将整列的格式更改为纯文本。数字仍将读取为数字,少数文本值将保留其文本值。任何内容都不会被视为 null。

于 2016-02-26T01:27:57.503 回答