【问题标题】:Vlookup a QR code cell in Google Sheets returns empty在 Google 表格中查找 QR 码单元格返回空
【发布时间】:2019-10-22 08:33:51
【问题描述】:

在 Google 表格中,当基于 Vlookup 搜索从另一个选项卡/工作表中搜索行的数据时,具有 QR 码的单元格返回空。 示例在这里https://docs.google.com/spreadsheets/d/1jy8AVbSfgJRh5WAFNgEOAq-VvEuBbyMDk5js3EiiRf4/edit?usp=sharing

我在 Google 表格中有 4 个标签/表格:

  1. (Sheet1-data)从 Google 表单收集数据。
  2. (Sheet2-process)用于处理第一张表中的数据,是生成二维码的地方。
  3. (Sheet3-pivot) 收集所有数据并自动向空单元格添加 N/A,它基于:'No match' message in Google Sheets Vlookup results for cells with no data
  4. (Sheet4-search) 根据用户输入的值执行 Vlookup 搜索,该值基于:Search a value from another tab/sheet in google sheets based on cell reference

(Sheet2-process)中生成二维码的代码是这样的:

={"QR";arrayformula( if( len(A2:A),IMAGE("https://api.qrserver.com/v1/create-qr-code/?size=120x120&data="&ENCODEURL(
"-Tipo de Equipo: "&B2:B& char(10)& 
"-ID unico: "& F2:F& char(10)& 
"-# Serial: "&G2:G & char(10)&
"-Area: "&L2:L & char(10)),2)   ,""))}

(Sheet3-pivot) 中 QR 列的代码是这样的:

 =arrayformula(IF(LEN('Sheet1-data'!$A:$A), IF(Sheet2-process!M:M<>"",Sheet2-process!M:M,"N/A"),""))

然后,搜索的代码是这样的:

=ARRAYFORMULA(
    IF(B3<>"", SUBSTITUTE(TRANSPOSE(SPLIT(TEXTJOIN(CHAR(10)&CHAR(10)&"♦", 1, 
        VLOOKUP(B3, {Sheet3-pivot!AN:AN, Sheet3-pivot!A:BR}, 
                    {69,70},0)), CHAR(10))), "♦", ),
    IF(C3<>"", SUBSTITUTE(TRANSPOSE(SPLIT(TEXTJOIN(CHAR(10)&CHAR(10)&"♦", 1, 
        VLOOKUP(C3, {Sheet3-pivot!AK:AK, Sheet3-pivot!A:BR}, 
                    {69,70},0)), CHAR(10))), "♦", ), 
    IF(D3<>"", SUBSTITUTE(TRANSPOSE(SPLIT(TEXTJOIN(CHAR(10)&CHAR(10)&"♦", 1, 
        VLOOKUP(D3, {Sheet3-pivot!AR:AR, Sheet3-pivot!A:BR}, 
                    {69,70},0)), CHAR(10))), "♦", ),
    IF(E3<>"", SUBSTITUTE(TRANSPOSE(SPLIT(TEXTJOIN(CHAR(10)&CHAR(10)&"♦", 1, 
        VLOOKUP(E3, {Sheet3-pivot!W:W, Sheet3-pivot!A:BR}, 
                    {69,70},0)), CHAR(10))), "♦", ),
    IF(F3<>"", SUBSTITUTE(TRANSPOSE(SPLIT(TEXTJOIN(CHAR(10)&CHAR(10)&"♦", 1, 
        VLOOKUP(F3, {Sheet3-pivot!Z:Z, Sheet3-pivot!A:BR}, 
                    {69,70}, 0)), CHAR(10))), "♦",),
                    ))))))

搜索确实会返回除第 70 行的 QR 码(它是 ...{69,70}... )之外的所有值。单元格只是显示为空,好像数据透视表的正确列中没有任何内容。

在 (Sheet4-search) 中搜索的值的目的是,它们可以在未来的新工作表/选项卡上引用,并根据搜索的内容提供可打印的报告。

到目前为止,我唯一的猜测是这可能是因为 QR 是图像。但是,例如,如果我使用一个简单的=BQ3(带有生成的 QR 的单元格),那么该引用就可以完美地工作。

【问题讨论】:

标签: filter google-sheets google-sheets-formula array-formulas gs-vlookup


【解决方案1】:

您需要将它单独添加到数组{} 中,例如:

=ARRAYFORMULA(
        IF(B3<>"", {SUBSTITUTE(TRANSPOSE(SPLIT(TEXTJOIN(CHAR(10)&CHAR(10)&"♦", 1, 
            VLOOKUP(B3, {'Sheet3-pivot'!AN:AN, 'Sheet3-pivot'!A:BR}, 
                        {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71},
 0)), CHAR(10))), "♦", ); VLOOKUP(B3, {'Sheet3-pivot'!AN:AN, 'Sheet3-pivot'!A:BR}, 70, 0)},

        IF(C3<>"", {...............

【讨论】:

    猜你喜欢
    • 2022-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 2013-04-26
    相关资源
    最近更新 更多