我有一个共享的Google电子表格,其中几个用户已经填写了各个部分。
使用交替显示颜色的线条以方便正确放置其他数据会很有用。


是否有一种无痛的方法来交替上色(例如,假设单元格中已经有很多单元格包含文本了?


在空文档中,总是会有“颜色2行,复制-粘贴2行,复制粘贴4行,等等。”选项,但是在当前文档中,已经有文本,并且某些行仍可能会被删除,这需要稍后重新着色。

#1 楼

最后,我原来的答案已经完全过时了。

Google更新了“格式”菜单项中具有“交替颜色”功能的功能。在这里,您可以轻松地选择默认方案并根据需要进行自定义:



请确保删除旧的手动格式,因为它不会自动替换/覆盖。

===该行下面已过时===

Google现在以“新电子表格格式”添加了此功能。

可以为新文档启用,如下所示:
在“ MyDrive”上转到设置,选择“编辑”,然后选择“尝试新的Google表格”。
请注意,到目前为止,并非所有功能都完整,因此请对其进行处理作为测试版。

此新电子表格的变化之一是可以在条件格式设置选项中定义自定义公式。

然后该公式将允许交替着色在工作表中(如果应用于整个工作表):

=MOD(ROW(A2),2) < 1


更新。以下内容也可以使用(thx @Qwertman):

=MOD(ROW(),2) < 1


出于完整性考虑:我现在已经在使用新表了一段时间了,但还没有找到我失踪的功能。尽管自定义公式非常有用-不仅适用于交替颜色。



选择条件格式:





创建具有背景颜色和单元格范围的自定义公式:






查看结果:



评论


因为目前我仅在公司内部文档中使用它。如果我有时间,我会创建一个假人。

– StampedeXV
14年2月14日在8:48

有关什么的屏幕截图?一张颜色交替的表吗?如何选择新的工作表或在哪里定义公式?

– StampedeXV
14年2月14日在12:23

✔最佳答案,谢谢。 FWIW,“工作表”现在已全面推出,脚本库现在为“附加组件”

–Rowe Morehouse
2014年6月23日在1:25

您无需将任何内容放入ROW,它可以只是= MOD(ROW(),1)<1

– M-Pixel
16年3月28日在22:35

为什么不简单地= ISEVEN(ROW())?

–törzsmókus
16-09-2在11:20

#2 楼

当前没有公式可以执行此操作,也没有默认的Google功能。

但是,有一些第三方脚本可以为您完成此操作:

安装脚本


打开电子表格
单击Tools菜单
单击Script Gallery

搜索Zebra Stripe

安装
阅读警告(如果您同意,请继续)
授权

执行脚本


单击Tools菜单
转到Script Manager...

单击ZebraStripe

单击Run

利润




您必须编辑脚本才能获取您想要的颜色
仅影响您当前正在查看的图纸


评论


脚本库不再可用。

–奥利
2014年5月3日在8:36

#3 楼


选择行1

用填充颜色着色

选择行2

选择行用另一颜色填充颜色

选择1行和2行并复制
选择整张纸
转到编辑→特殊粘贴→仅粘贴格式


作业完成。

评论


很好的答案,但是如果您添加了一个演示过程的屏幕截图,那就更好了。

– Vidar S. Ramdal
2014年4月22日在10:11

极好的答案。如果没有截图,这真的很容易。

–奥利
2014年5月3日晚上8:35

#4 楼

我已经在脚本库中发布了一个名为“斑马条纹菜单”的脚本。如果将其添加到电子表格,并确保打开和关闭脚本编辑器(识别脚本存在错误)。您将有一个名为“斑马条纹”的菜单,在这里您将找到几个用于剥离工作表和单元格组的选项。其他一些选项未使用Google的最佳做法,因此撤消或分割选择非常困难。如果您找到更好的工具,我很想听听它们。

评论


脚本库不再可用。

–奥利
2014年5月3日晚上8:35

#5 楼

您也可以使用绘画格式工具。更改颜色后突出显示该行,单击看起来像油漆滚筒的图标,然后也单击您要更改颜色的下一行(只要这两个行的其余格式均为同样。)重复执行该操作很烦人,但是比为每一行选择颜色要快。


如果在添加数据之前执行此操作,则其他格式更改将生效
此方法的主要问题是,如果稍后插入行,它将抵消所有内容,除非您插入一对行并将其设置为相同的格式。

希望Google将公式添加到条件即将格式化。

#6 楼

另一种解决方案可能是根本不更改文档,而仅使用自定义CSS更改文档的显示方式(例如,使用Firefox / Chrome插件样式):



@-moz-document url-prefix(https://docs.google.com/spreadsheet) {
    .waffle tr:nth-child(even) > td {
        background-color: #A0FFA0 !important;
    }
}


使用时尚的菜单可以轻松打开和关闭它,并且可以在所有电子表格上使用,即使那些您没有写权限的电子表格也是如此。
这不完全是要求,但无论如何都可能有用。



我也将此样式表也上传到了用户样式页面。

评论


为什么不添加屏幕截图?

–雅各布·扬·图恩斯特拉(Jacob Jan Tuinstra)
2014-2-27在20:57

没想到会有所帮助。很明显,交替的颜色看起来如何。

– Hjulle
2014-2-27在22:36

#7 楼

@StampedeXV的答案是正确的,但是我建议使用更简单的函数。
您不需要ROW()函数的参数,ISEVEN()比MOD简单得多:

=ISEVEN(ROW())


针对行的逆集合将是:

=ISODD(ROW())


基于列的斑马线表可以使用:

=ISEVEN(COLUMN())


...和...

=ISODD(COLUMN())


评论


谢谢,但是接受答案的发布者现在选择将我的解决方案添加为他的答案的更新。不好笑。

–Jpsy
16-09-5 13:12

从技术上讲,如果他们链接到您的答案,则允许他们这样做。

–törzsmókus
16年9月5日在14:43

顺便说一句,您可能只是编辑了他们的答案,而不是在单独的答案中添加该详细信息。你甚至可以得到2个代表:)

–törzsmókus
16-09-5 14:44

不,不允许复制。可以链接到另一个答案,但不能复制。复制打破了基于信誉的回答的想法。我的答案不是细节,而是解决问题的完整,更优雅的方法。正如您自己说的:“这应该是公认的答案。”那么,为什么我只能参加2次代表?

–Jpsy
16 Sep 6'9:12



不,@törzsmókus,您还是错误的。虽然CC许可适用于此处的所有内容,但仍然不允许将一个问题的一个答案复制到同一问题的另一个答案。这与CC无关,但与StackExchange的规则无关。无需在此上启动元数据,因为已经有很多元数据,并且都具有相同的结果:这是不行的。参见以下示例:meta.stackoverflow.com/questions/269396/…

–Jpsy
16 Sep 7'在8:21