首页 > 解决方案 > 连接字符串所需的 Google 表格功能

问题描述

所以我试图为工作创建一个函数,所以我不能给出确切的细节(这很困难),但基本上我正在尝试创建一个长 URL。

在我的谷歌表上,我有两张表,Sheet1 和过滤器。

在 Sheet1 上有 7 列。
第一列可以留空,具体取决于我是否需要过滤器中的某些内容,稍后我会介绍。
第 2 -6 列我输入不同的内容并且是必需的。它将所有关键术语以及添加到这些单元格中的所有内容连接起来。这些列无法更改,因为它们是此 Excel 工作表工作的最低要求。
第 7 列显示我需要的 URL。我有一个 IF 函数来判断第一列是否为空,然后将第二列到第六列中的关键术语和值连接起来。如果第一列有值,我有 av 查找以从工作表 B 中提取完全匹配,然后将关键术语和值连接到第 2 列到第 6 列。

在过滤器上,如果 Sheet1 的第一列中有值,则我有部分 URL 是必需的。
第一列包含输入到 Sheet1 第一列的值。
第 2 列显示如果输入来自过滤器的第 1 列,则来自 Sheet1 的第 7 列将吐出的 URL 部分。

过滤器第 2 列中显示的 URL 部分由两部分组成。第一部分是第一列中的值是什么类别(产品、性别、年龄、语言等),第二部分是实际值。我将分别称之为(A)和(B)。这些由 & 符号分隔。

我的目标是能够将多个过滤器第一列值组合在一起(例如:男士、女士、水等),并将它们连接到 Sheet1 中的串联 URL。

我需要解决的 3 个问题是:
当多个 Filters 第一列值组合在一起时,URL 被分解为类别,然后是实际值。例如,如果我想要绿色和植物,则 URL 是类别(在本例中是颜色和产品),然后是绿色和植物。所以生成的 URL 类似于 color1&product2&1=green&2=plants 。它还在类别后添加了一个数字,如左侧 URL 所示。
当我有多个属于同一类别的值时,它由 %7C 分隔。例如,如果我想要绿色和蓝色,则 URL 是 color&green%7Cblue 。
另一个问题是,在 Sheet1 第一列,我希望能够在 1 个单元格中添加多个值并从过滤器中提取多个值,并解决上述两个问题。所以一个单元格中有两个或多个值。如果这不可能,我想我可以在 URL 的左侧添加更多过滤器,但我需要能够添加大约 15 个过滤器。

最终目标是创建具有多个过滤器的 URL。例如,(?prefn1=WaterResistance&prefn2=genderGroup&prefn3=productClass&prefv1=Waterproof&prefv2=Men%27s&prefv3=夹克&icp=XY&id=YD&ica=GA&pr=KK&cr=JE)。在这个例子中,在“夹克&”之后,URL 的其余部分是从 Sheet1 连接起来的,这部分我已经在工作,并且是我在 Sheet1 列 G 上的论坛的一部分。我目前能够创建一个带有 1 的 URL过滤器,仅此而已。

这是一个非常令人困惑的问题,如果可能的话,我想解决这个问题!

标签: google-sheetsconcatenationgoogle-sheets-formulaarray-formulasgs-vlookup

解决方案


=ARRAYFORMULA(SUBSTITUTE(IF((B2:B<>"")*(C2:C<>"")*(D2:D<>"")*(E2:E<>"")*(F2:F<>""),
 IFERROR(VLOOKUP(A2:A, Filters!A2:B, 2, 0))&
 "icp="&B2:B&"&id="&C2:C&"&ica="&D2:D&"&pr="&E2:E&"&cr="&F2:F, ), " ", "%7C"))

0


推荐阅读