例如,我在“登录帐户”表上有这个简单的表格:
然后在 AppSheet 上,我使用数据 --> 用户设置来设置一个简单的登录表单。我可以设置一个名为
EMAIL ADDRESS
的字段(列)。第二个字段(列)是 YOUR ID
,我给出自动计算行为:
=LOOKUP([EMAIL ADDRESS],"Login Account","Email","User ID")
我还有第三个字段(列),名称为
EMAIL MIRROR
,公式只需复制EMAIL ADDRESS
的内容:
=(EMAIL)
结果:
电子邮件地址 | 您的ID | 电子邮件镜子 |
---|---|---|
(空,初始) | A001 | (空) |
[电子邮件受保护] | A001 | [电子邮件受保护] |
[电子邮件受保护] | A001 | [电子邮件受保护] |
[电子邮件受保护] | A001 | [电子邮件受保护] |
YOUR ID
列始终给出结果A001
,无论我输入什么电子邮件EMAIL ADDRESS
(只要电子邮件存在)。但 EMAIL MIRROR
始终成功更新为当前 EMAIL ADDRESS
。为什么会这样呢?如何正确使用 LOOKUP()
使用其他列值 查找值并 更新显示以反映该结果?
我正在遵循this教程,但进行必要的更改以适应我的表格和场景。
它帮助我使用:
[_THISROW].[matchvalue]
而不仅仅是
[matchvalue]
在你的例子中:
=LOOKUP([_THISROW].[EMAIL ADDRESS],"Login Account","Email","User ID")
有关解决方案的更多信息请参见此处: https://www.googlecloudcommunity.com/gc/AppSheet-Q-A/Lookup-match-value/m-p/256959
[_THISROW] 在匹配的值之前可以解决问题。
我还认为你应该将其设置为只读,这样用户就不会错误地覆盖这些值。