我希望这将是一个相对简单的是/否。我有245个国家/地区的国家/地区列表。
有什么方法可以在google工作表中使用vlookup来导入他们的相对标志?我在考虑可能使用像Wiki或http://www.theodora.com/flags/这样的资源,但不确定我是否可以使用?
以下是相关列表的链接:https://docs.google.com/spreadsheets/d/1f8q2Sat5f-H-GPvemuS2LVSHZpdCtWDj4bqPKCU_OEk/edit?usp=sharing
提前感谢您的帮助。
路
答案 0 :(得分:5)
请尝试此链接: https://www.countries-ofthe-world.com/flags-of-the-world.html
=IMPORTXML(A1,"//@src[contains(.,'png')]")
=IMAGE("https://www.countries-ofthe-world.com/"&A5)
答案 1 :(得分:0)
在写完这篇文章并做了一些好奇的谷歌搜索后,我发现了以下 API:
这让我可以创建这个单行公式:
=IMAGE(CONCATENATE("https://www.countryflags.io/", REGEXEXTRACT(INDEX(IMPORTDATA(CONCAT("https://restcountries.eu/rest/v2/name/", F3)), 1, 3),"""(\w{2})"""), "/flat/64.png"))
(如果有人知道在 Google 表格中导入和解析 json 的更好方法 - 请告诉我)
由于这些是官方 API 而不是“sciencekids.co.nz”,它理论上会提供以下好处:
但是,很大的缺点:它似乎仅限于 64 像素宽的图像(即使最初发布的“sciencekids”解决方案也提供了 96 像素宽的图像)。因此,如果您想要更高质量的图像,可以将原始公式调整为:
=IMAGE(SUBSTITUTE(SUBSTITUTE(QUERY(IMPORTXML("http://www.sciencekids.co.nz/pictures/flags.html","//@src[contains(.,'flags96')]"),CONCATENATE("SELECT Col1 WHERE Col1 CONTAINS '/", SUBSTITUTE(SUBSTITUTE(A1, " ", "_"), "&", "and") ,".jpg'")),"..","http://www.sciencekids.co.nz"), "flags96", "flags680"))
在“sciencekids.co.nz”网站上提供 680 像素宽的图像。 (如果有人发现提供更高质量图像的 API,请告诉我。一定有一个)
为了补充 Max 的精彩答案,以下是单个函数中的全部内容:
=IMAGE(SUBSTITUTE(QUERY(IMPORTXML("http://www.sciencekids.co.nz/pictures/flags.html","//@src[contains(.,'flags96')]"),CONCATENATE("SELECT Col1 WHERE Col1 CONTAINS '/", SUBSTITUTE(SUBSTITUTE(A1, " ", "_"), "&", "and") ,".jpg'")),"..","http://www.sciencekids.co.nz"))
(如果有人想简化一点,请做我的客人)
把它放在 A2 中,然后在 A1 中输入一个国家名称(例如“土耳其”或“波斯尼亚和黑塞哥维那”),它会为您的“搜索”显示一个标志