小编Max*_*rov的帖子

为什么另存为 PDF 的 Google 表格在单元格中不显示表情符号?

你知道为什么有时表情符号图标显示正常,有时在谷歌表格中显示为空方块,而且当我将表格另存为 PDF 时,图标显示为线条!,有人能告知原因吗?我应该怎么办 ?

这是工作表的链接(B24中的图标) https://docs.google.com/spreadsheets/d/1LRmyNlKSQjADz0bG_-mDf6w0LqEg7IcPgVizXF4C-Xc/edit?usp=sharing

这是我从中获取图标的链接。

https://emojipedia.org/emoji/%F0%9F%8C%9E/

谢谢,

google-sheets

6
推荐指数
2
解决办法
5366
查看次数

谷歌表格。如何获取实际范围大小(以像素为单位)

我的脚本将选定的范围转换为图像,请参阅。它首先创建一个公共 PDF URL,然后将其转换为 PNG。

\n

在此输入图像描述

\n

它适用于小范围(10-20 行),并创建包含图像、图表、迷你图和格式的镜头。

\n

问题在于大范围(100-1000 行)。它们包含未知大小的边框,我无法计算它。

\n

在此输入图像描述

\n

粗边框会使行更高,因此图像不适合。

\n

在此输入图像描述

\n

如果我们没有边框或边框较薄,则实际图像尺寸会比计算的尺寸小一些。这会在图像下方创建一个空白区域。

\n

我的代码示例用于获取范围大小(以像素为单位):

\n
  // get row height in pixels\n  var h = 0;\n  for (var i = rownum; i <= rownum2; i++) {\n    if (i <= options.measure_limit) {\n      size = sheet.getRowHeight(i);\n    }\n    h += size\n    /** manual correction */\n    if (size === 2) {\n      h-=1;\n    } else {\n      // h -= 0.42; /** TODO \xe2\x86\x92 test the range to make it …
Run Code Online (Sandbox Code Playgroud)

javascript google-sheets google-apps-script

6
推荐指数
1
解决办法
1011
查看次数

跳过查询

最近我发现了在查询中起作用的特殊词“跳过”。我无意中发现了这件事。这个公式有效:

=QUERY(A1:A11,"select A skipping 2")
Run Code Online (Sandbox Code Playgroud)

它跳过 1 行,给我第 1、3、5、7 行……等等。Skipping 1返回所有行,skipping 3返回 1, 4, 7, 10 ...

在此处输入图片说明

我想知道 google-sheets 查询中是否有任何表达式,这些表达式未在Query Language Reference 中列出。如果其他人使用或发现“跳过”查询。

formulas google-sheets google-query-language

5
推荐指数
1
解决办法
1796
查看次数

将范围传递给 Google 电子表格函数(不带引号)

我有一个自定义的谷歌电子表格函数,它需要将一系列单元格作为参数传递。例如,对我的函数的调用可能如下所示=myFunction("D3:Y23")

我想使用不带引号的范围来调用我的函数,如下所示:=myFunction(D3:Y23)。我知道这并不是一个巨大的变化,但最好不使用引号来引用单元格范围,类似于所有默认的谷歌电子表格功能。是否可以使我的函数使用未加引号的范围作为这样的输入?

google-sheets google-apps-script

5
推荐指数
1
解决办法
2713
查看次数

指向上一行的ArrayFormula?(循环依赖性错误)

我在看起来很普遍的要求上遇到了麻烦:合并先前行的数组公式计算。问题似乎是数组公式中的所有单元都被立即求值,因此它认为存在循环依赖关系,并给出该错误。

在Google Spreadsheet上模拟了一个玩具示例,您应该可以看到并对其进行评论。(我不允许编辑访问以防止故意破坏。)

它看起来像这样,这里的一切是行2,和子弹1,2,3,4引用列ABCD分别为:

  1. '更改'-手动输入为空白
  2. '例如 利息”-=ARRAYFORMULA(IF(ROW(B2:B)>2, OFFSET(D2:D, -1, 0) + A2:A,))
  3. “利率”-手动输入为空白
  4. “余额”- =ARRAYFORMULA(IF(ROW(D2:D)=2, 0, B2:B*(1+C2:C)))

想法是在每行上设置利率复合(利率可能可变)和正/负资本变动的选项,但是,单元格B2D2(点2、4)错误#REF,并且在悬停时报告“循环依赖” 。

我用尽了一切我能想到的:OFFSETINDIRECTD1:D(代替2),连一个助手列什么也不做,而是指的前一行D(只是造成了三列循环依赖代替)。

我怎么有'前。兴趣”列引用数组公式中前一行的“余额”列,而不会导致此错误?

类似的问题可以SUMIF通过在行数小于数组公式中“当前”行的条件下解决。我看不到这对我来说可行,因为我需要将每一步的总和乘以利息。我试图SUMIF(... "="&DATE(...) ...)引用上一行。这可以在帮助程序列中显示偏移余额,但是尝试使用它(在下面进行迭代计算)的行为就像是零。

在@JackBrown的建议下,我启用了消除循环依赖项错误的迭代计算,但是它仍然不起作用- 0尽管上一行具有非零值,但第二填充行从上一行获取值。好像它是在早期迭代中获取值,而没有在更改时进行更新。

excel google-sheets array-formulas

5
推荐指数
1
解决办法
1179
查看次数

为 Google 表格运行 Max ArrayFormula

我有一个手动输入的数字列表:

1
100
100
10
1
1000
10
1000
1
1000
100
10
Run Code Online (Sandbox Code Playgroud)

我想获取运行最大值 - 初始数字数组的每个子数组的最大值。我所说的子数组是指从[A1][A2]、从[A1][A3]、从[A1][A4]等的数字。

结果如下:

1
100
100
100
100
1000
1000
1000
1000
1000
1000
1000
Run Code Online (Sandbox Code Playgroud)

可以将更多条目添加到初始号码列表中。


使用赏金答案,这是一个 100500 行的速度测试:

在此输入图像描述

这不包括最新答案

max google-sheets vlookup google-apps-script array-formulas

5
推荐指数
1
解决办法
740
查看次数

在谷歌脚本中找到字符串的长度

我正在尝试为谷歌表制作一个脚本,谁可以计算文本中的一个字母。但似乎 .length 不起作用。任何可以就在哪里找到解决方案提供指导的人。

    function Tjekkode(tekst , bogstav){
    var test = "";
    // find the length of laengdeTekst
    var laengdeTekst = tekst.length;
    var t = 0;
    // through the text character by character
    for ( var i = 1; i<laengdeTekst ; i++) {

     var test = tekst.substr(i,1);
     if (test == bogstav) {
      // if the letter is found, it is counted up
      // REMEMBER == means compare
      var t = t + 1;
     }
    }
    // returns percent appearance of the …
Run Code Online (Sandbox Code Playgroud)

google-sheets google-apps-script

4
推荐指数
1
解决办法
3万
查看次数

电子表格获得唯一名称但忽略空白单元格

我想使用电子表格来获取表格中A列的所有唯一名称,但同时我希望忽略空白单元格.到目前为止,我已经有了这个公式,它返回了A列中的所有唯一名称,但我不知道如何忽略空白单元格而不重复之前添加过的值.

是我的文档到目前为止的样子.正如你所看到的,Megan之后一切都停止了,因为有一个空白单元格.

=IFERROR(INDEX($A$2:$A$90, MATCH(0, COUNTIF($I$10:I10, $A$2:$A$90), 0)), "")

搜索得很长,但没有提出任何问题,如果有人知道如何做到这一点,我会非常感激.谢谢!

spreadsheet google-docs google-sheets

4
推荐指数
3
解决办法
2万
查看次数

IsDate ArrayFormula

刚刚注意到isDatearrayformula.

案件

如果日期要过滤所有值:

在此处输入图片说明

使用公式:

=FILTER(data,ISDATE(data))

预期结果:

8/28/2018
Run Code Online (Sandbox Code Playgroud)

得到了:

#N/A
Run Code Online (Sandbox Code Playgroud)

  1. 为什么?其他检查在filter( isNumber, isText, isErr) 中起作用。
  2. 解决方法?

google-sheets array-formulas

4
推荐指数
2
解决办法
1531
查看次数

公式使 SpreadsheetApp 在 Google Sheets 脚本中运行速度变慢

这个问题最近出现~2022年8月25日。

\n

我的onEdit触发器依赖于工作表名称,并且脚本运行时间太长而无法获取它。这是在我的环境中重现错误的最小脚本:

\n
function onEdit(e) {\n  var t = new Date();\n  console.log(\'we are in onEdit!\');\n  var sheetName = e.range.getSheet().getName();\n  console.log(sheetName);\n  console.log(\'We got sheet name. Time past = \' + (new Date() - t));\n}\n
Run Code Online (Sandbox Code Playgroud)\n

该函数range.getName()运行速度太慢,并且脚本超时。

\n

我以前从未见过这种行为。其他样本:SpreadsheetApp. 在我的另一个文件中,这一行需要 30 秒:

\n

SpreadsheetApp.openById(id);

\n

重现错误

\n

这是重现错误所需的最少代码的文件:

\n

onEdit 崩溃测试 \xe2\x9e\xa1\xef\xb8\x8f e.range.getSheet().getName()

\n

请复印一份。

\n

重现onEdit错误

\n
    \n
  1. 在第一个单元格中打印 1
  2. \n
  3. 立即按 Enter 键并打印 2
  4. \n
  5. 重复几次
  6. \n
  7. 转到脚本编辑器并查看执行时间
  8. \n
\n

原来的 …

performance triggers google-sheets google-apps-script google-sheets-formula

4
推荐指数
1
解决办法
594
查看次数