Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets 从Google电子表格的下拉列表中选择多个值_Google Sheets_Google Spreadsheet Api - Fatal编程技术网

Google sheets 从Google电子表格的下拉列表中选择多个值

Google sheets 从Google电子表格的下拉列表中选择多个值,google-sheets,google-spreadsheet-api,Google Sheets,Google Spreadsheet Api,谷歌电子表格看起来只能在下拉列表中选择一个值 有没有办法从谷歌电子表格的下拉列表中选择多个值?我看到您已经用谷歌电子表格api标记了这个问题。那么,“下拉”是指谷歌应用程序脚本的列表框吗?如果是,您可以使用简单的真/假值切换用户从列表框中选择多个项目的能力。 下面是一个例子: `var lb = app.createListBox(true).setId('myId').setName('myLbName');` 请注意,启用multiselect是因为单词true。您将使用数据验证。单击要

谷歌电子表格看起来只能在下拉列表中选择一个值


有没有办法从谷歌电子表格的下拉列表中选择多个值?

我看到您已经用
谷歌电子表格api
标记了这个问题。那么,“下拉”是指谷歌应用程序脚本的列表框吗?如果是,您可以使用简单的真/假值切换用户从列表框中选择多个项目的能力。
下面是一个例子:

`var lb = app.createListBox(true).setId('myId').setName('myLbName');` 

请注意,启用multiselect是因为单词true。

您将使用数据验证。单击要具有多个下拉列表的单元格>数据>验证>标准(从一个范围中列出)-在这里,您可以从下拉列表中选择所需的项目列表。和。。你很棒。我举了一个例子

我在

您需要使用工具>脚本编辑器。在那里创建.gs和.html文件。参见示例(链接也可以在Youtube视频下找到)。抄袭

一旦你有了.gs和.html文件,保存它们并重新加载你的电子表格。您将看到“自定义菜单”作为顶部菜单的最后一项。选择要管理的单元格,然后单击此菜单项

在第一次的时候,它会要求你授权申请——继续这样做吧

注意(1):在单击“自定义菜单”之前,请确保您的单元格已定义“数据验证”


注(2):该解决方案似乎适用于数据验证的“范围列表”标准(不适用于“项目列表”)

我发现了一个很好的解决方案。只有当您想从下拉列表中选择多达4个左右的选项时,它才真正起作用,但具体如下:

为每个“项”创建尽可能多的行,作为您希望能够选择的下拉项。因此,如果您希望能够从给定的下拉列表中为列表中的每个人选择最多3个特征,请为每个人总共创建3行。然后合并A:1-A:3、B:1-B:3、C:1-C:3等,直到到达您希望下拉列表显示的列。不要合并这些单元格,而是将“您的数据验证”下拉列表放置在每个单元格中


希望这是清楚的

为了补充AlexG的答案,我在下面的链接中找到了一个更好、更强大的multi-select版本(我尝试过,并按预期工作):

有关在Google Sheets中设置脚本的一般指导,请参见

要使用此脚本,请执行以下操作:

  • 在Google工作表中,设置单元格的数据验证, 使用范围中的数据。在单元验证中,不要选择“拒绝” 输入'
  • 转到工具>脚本编辑器
  • 在脚本编辑器中,转到文件>新建>脚本文件
  • 将文件命名为multi-select.gs并粘贴到 multi-select.gs。文件>保存
  • 在脚本编辑器中,转到文件>新建>Html文件名文件 并粘贴到dialog.html的内容中。文件>保存
  • 回到您的电子表格中,您现在应该有一个名为 “脚本”。如有必要,请刷新页面
  • 从列表中选择要填充多个项目的单元格 验证范围
  • 转到此单元格的脚本>多选。。。侧边栏应该 打开,显示有效项目的清单
  • 勾选您想要的项目,然后单击“设置”按钮以填充您的项目 包含选定项的单元格,逗号分隔
  • 您可以让脚本侧栏保持打开状态。选择任何具有验证的单元格时,单击脚本侧栏中的“刷新验证”以调出该单元格的清单

    上述步骤就是从这个角度采取的


    如果答案必须限制在谷歌表单上,那么它是可行的,但它有局限性,而且不够笨拙,可能很难让其他人采用。在尝试解决这个问题时,我发现,对于许多应用程序来说,通过允许多选列来解决这个问题,UX更好。

    这只允许他们一次选择一个项目。OP要求从一个下拉列表中选择多个项目。答案与问题不符-需要多选,而不是从下拉列表中单选。答案与其他人确定的问题无关。另外,提供的链接不起作用。我知道这不是一个像其他人一样的花哨的答案,但它非常健壮。它1)不需要编写脚本,2)可以由其他人使用,无需培训,3)如果有人做错了,它不会损坏(严重),4)容易支持过滤、搜索等,5)使用标准验证,因此如果谷歌更改了某些内容,它仍然可以工作。谢谢在这种情况下,由于A、B、D和E列中的垂直合并,筛选似乎不起作用?(虽然我仍然很喜欢这个解决方案=)这张图片真的根本帮不上我做这件事,你能一步一步地做吗?结果呢?有没有可能在一个TamperMonkey脚本中实现它(这样就可以改变google sheet的工作方式)?您是否尝试过?与您共享工作表的用户可能会收到红色警告
    ,您无权执行此操作。请请求此项目的所有者授予您访问权限
    。为了解决这个问题,您需要将脚本部署为一个web应用程序:非常好的工作,但由于它基本上只复制列表项,在玩了几个小时之后,我发现简单地复制列表中所需的单元格就更容易了(如果您没有太多数据,它会更灵活、更快)。别忘了向Google发送此功能请求:
    请允许从下拉列表中选择多个值
    。这真的非常有用。非常感谢。@parishodak,这太棒了。如果我是询问者,我会将此标记为解决方案。只需将搜索栏设置得更高,是否可以在html正文中包含搜索栏?从1000多个选项中筛选项目的内容?我在谷歌搜索过,但没有找到