我有一个3列excel文件(名称/时间/链接)。例如,名字是学院的名字,时间是文件上传的日期,链接是超链接的"test.pdf“。现在,第三列包含了6000个应该是可点击的文本单元,例如,我将把我所有的文档上传到AWS S3或Google,然后将链接放到单元格中。单元格值和文件名是相同的。(test.pdf cell = test.pdf可下载文件)。
我想知道的是,如何在不手动复制/粘贴上载的文件链接到单元格的情况下,将所有这些链接分配给这些单元格?这里有6000+的记录,这需要花费大量的时间。当然,不管文件是在S3还是GD上,我都可以把它们上传到任何服务中,我想这是可能的。
TLDR我想将我所有的6000个单元链接到人们可以下载的文档中,但是除了“手动操作”之外,我找不到任何自动化的解决方案。
PS:文件夹结构是这样的
学院1资料夹(10份pdf文件)
学院2资料夹(10份pdf文件)
..。
学院600文件夹(10份pdf文件)
例如,如果学院名称是牛津,那么该文件夹中的第一个文档将是P1OU (周期1牛津大学,一直到10个文档)。
这是电子表格:
发布于 2020-09-23 10:43:59
假设
下面的解决方案假设了以下几点:
一种可能的应用程序脚本解决方案
rangeNames和rangeLinks替换为您希望使用的名称范围和要查看超链接的范围。例如,基于电子表格:
rangeNames = "C2:C50";rangeLinks = "D2:D50";警告为6000行,这可能需要很长时间,可能会超时(最多6分钟),或者您可能会遇到配额问题(虽然我认为对于6000条请求,它应该是好的)。你很可能要把它分成几批。请参阅更多关于这里的信息
=HYPERLINK函数。解释
脚本首先获取文件名的范围,并将它们放入数组中。然后运行一个for循环,该循环将搜索驱动器中的文件名,并返回其下载URL。如果值为空,则不会搜索驱动器。如果它找不到值,它将只返回列中的“文件未找到”。
参考文献
文件迭代器 -从getFilesByName返回的内容
https://stackoverflow.com/questions/63972105
复制相似问题