Google sheets Google Sheets:在列中输入任何值时应用StikeThrough

Google sheets Google Sheets:在列中输入任何值时应用StikeThrough,google-sheets,pc,strikethrough,Google Sheets,Pc,Strikethrough,我正在做一张登记表,上面写着可供选择的日期,旁边写着姓名。当一个人把他们的姓名首字母放在日期列中时,我希望顶部的日期改为删除线,这样其他人就可以很容易地将其识别为不再可供选择。有什么办法吗?所以它需要是这样的:如果任何文本出现在列E中的任何地方,那么E1:E3将更改为删除线。。。。谢谢 我使用谷歌工作表,个人电脑,Windows8。我是新来的,如果不让我发布图片。。。以下是我的工作理念: 有关更多详细信息,请参见我对以下问题的回答。谢谢 你能看看这是否有效吗?作为一个奖励,我还做了一行,如果首字

我正在做一张登记表,上面写着可供选择的日期,旁边写着姓名。当一个人把他们的姓名首字母放在日期列中时,我希望顶部的日期改为删除线,这样其他人就可以很容易地将其识别为不再可供选择。有什么办法吗?所以它需要是这样的:如果任何文本出现在列E中的任何地方,那么E1:E3将更改为删除线。。。。谢谢

我使用谷歌工作表,个人电脑,Windows8。我是新来的,如果不让我发布图片。。。以下是我的工作理念:


有关更多详细信息,请参见我对以下问题的回答。谢谢

你能看看这是否有效吗?作为一个奖励,我还做了一行,如果首字母被删除(并且没有其他首字母出现在同一列中)

函数onEdit(e){
var ss=e.source.getActiveSheet();
如果(e.range.columnStart<5 | | e.range.rowStart<3)返回;
e、 范围偏移(-e.range.rowStart+1,0)
.setFontLine(即值?“线到”:“正常”);
}

注意:该脚本将适用于电子表格(工作簿)的每一张工作表。如果您只需要在一张工作表上使用该脚本,请在下面的代码中填写工作表名称,并使用该脚本而不是以前的脚本:

function onEdit(e) {
var ss = e.source.getActiveSheet();
if (ss.getName() !== 'Sheet1' || e.range.columnStart < 5 || e.range.rowStart < 3) return;
e.range.offset(-e.range.rowStart + 1, 0)
    .setFontLine(e.value ? "line-through" : "normal");
函数onEdit(e){
var ss=e.source.getActiveSheet();
if(ss.getName()!='Sheet1'|| e.range.columnStart<5 | e.range.rowStart<3)返回;
e、 范围偏移(-e.range.rowStart+1,0)
.setFontLine(即值?“线到”:“正常”);

}

您好,您有多少个datecolumns?日期在哪一排?文本将在下面一行输入?在你的问题中,我看到E1:E3是一列的一部分,它不应该是一行吗?您好,日期范围从E列第1行延伸到AR列第1行,但每个月都有或多或少的日期。日期总是从E列第1行(E1)开始,并跨越该行。因此,E1单元格中的日期将在该列的一个单元格中输入一个人的姓名首字母,该单元格从E4:E25开始。如果我们增加或失去一个有资格注册的人,这可能会改变。这里有一个链接到一个screegrab,可以帮助解释。在截图中,我手动添加了删除线。。。我希望在输入首字母作为show时自动发生这种情况。非常感谢。还要注意:脚本使用事件对象。因此,不要试图从脚本编辑器中运行它(否则您将得到e=undefined)。相反,尝试做一些编辑,看看是否发生了罢工通过。感谢您的帮助。我不熟悉脚本,因此我不知道如何或在我的工作表中输入脚本。我是否打开“脚本编辑器”并通过它?谢谢,是的。复制并粘贴到脚本编辑器中,然后保存。系统将提示您为项目命名。这样做,你就应该准备好了。如上所述,通过在电子表格中进行一些编辑来尝试脚本。我打开了电子表格,单击“工具”>“脚本编辑器”,然后用上面的脚本替换该框中的内容,但是它无法工作。我为脚本命名,但在尝试保存时出现错误。看一下这个屏幕抓图:当我第一次打开脚本编辑器时,已经有一些项目在里面了:function myFunction(){}
function onEdit(e) {
var ss = e.source.getActiveSheet();
if (ss.getName() !== 'Sheet1' || e.range.columnStart < 5 || e.range.rowStart < 3) return;
e.range.offset(-e.range.rowStart + 1, 0)
    .setFontLine(e.value ? "line-through" : "normal");