Вложенные операторы IF с условием И и несколькими вложенными запросами

На вкладке «Проверка процесса» в моем листе Google есть ячейка проверки данных с несколькими вариантами выбора. Выбранная опция вызывает QUERY на вкладке «Master Extraction».

Чтобы сделать его «защищенным от дурака», я добавил несколько столбцов на вкладке «Проверка процесса» с флажками, чтобы отметить завершение каждого этапа процесса (например, Еженедельный экспорт CSV кампании - этап, на котором пользователь должен экспортировать отчет в формате CSV). Если предыдущий этап не был завершен (флажки не отмечены), пользователь не может перейти к извлечению следующего файла.

Что мне нужно:

Если пользователь выбрал «Еженедельная кампания» в Проверке данных и поля исходного файла и Еженедельная кампания не были заполнены, отобразится следующее сообщение:

«Уточните, пожалуйста, правильно ли заполнены поля« Исходный файл »и« Идентификатор еженедельной кампании »на вкладке« Обработка валидации »».

Если пользователь выбирает другой отчет - например. «Обновить адрес лида» без завершения всех 4 этапов отчета «Еженедельная кампания» (не все 4 флажка были отмечены (= ИСТИНА)) для отображения следующего сообщения:

«Пожалуйста, уточните, были ли выполнены процессы« Еженедельный экспорт CSV кампании »,« Еженедельное сохранение экспорта CSV кампании »,« Еженедельное добавление SF кампании »и« Еженедельная ошибка успеха кампании TD Загрузить »».

В случае, если все этапы предыдущего процесса были завершены, должен сработать требуемый QUERY.

Что у меня есть до сих пор:

=IF(IF(AND(fileToExtract = "Weekly Campaign",
           sourceFile <> "",
           weeklyCampaignID <> ""), 
        QUERY(QUERY({sourceFile_dataRange}, 
                    "SELECT Col" & MATCH("Lead ID",sourceFile_labelRange,FALSE)), 
                    "SELECT Col1, '" & weeklyCampaignID & "', 'Sent' 
                     WHERE Col1 IS NOT NULL 
                     LABEL '" & weeklyCampaignID & "' 'Campaign ID', 
                           'Sent'                     'Status'",1),
        "Please, clarify if the 'Source File' and 'Weekly Campaign ID' fields in the 'Process Validation' tab have been filled correctly."),

 IF(IF(AND(fileToExtract = "Update lead address", 
           weeklyCampaign_CSV_Export = TRUE,
           weeklyCampaign_CSV_Export_Save = TRUE,
           weeklyCampaign_SF_Append = TRUE,
           weeklyCampaign_Success_Error_TD_Upload = TRUE),
       QUERY(QUERY({sourceFile_dataRange},
                   "SELECT Col" & MATCH("Lead ID",         sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Street",          sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("City",            sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("State/Province",  sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Zip/Postal Code", sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Country (RB)",        sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Country",         sourceFile_labelRange,FALSE),1),
                   "SELECT Col1,
                           Col2,
                           Col3,
                           Col4,
                           Col5,
                           Col6,
                           Col7
                     WHERE Col1 IS NOT NULL", 1), 
       "Please, clarify if the 'Weekly Campaign CSV Export', 'Weekly Campaign CSV Export Save', 'Weekly Campaign SF Append' and 'Weekly Campaign Success Error TD Upload' processes have been completed.")))

Приведенная выше формула приводит к #VALUE! ошибке - Function IF parameter 1 expects boolean values. But 'Please, clarify if the 'Source File' and 'Weekly Campaign ID' fields in the 'Process Validation' tab have been filled correctly.' is a text and cannot be coerced to a boolean..

Когда я попытался запустить их по отдельности вот так:

=IF(IF(AND(fileToExtract = "Weekly Campaign",
        sourceFile <> "",
        weeklyCampaignID <> ""), 
        QUERY(QUERY({sourceFile_dataRange}, 
                    "SELECT Col" & MATCH("Lead ID",sourceFile_labelRange,FALSE)), 
                    "SELECT Col1, '" & weeklyCampaignID & "', 'Sent' 
                     WHERE Col1 IS NOT NULL 
                     LABEL '" & weeklyCampaignID & "' 'Campaign ID', 
                           'Sent'                     'Status'",1),
        "Please, clarify if the 'Source File' and 'Weekly Campaign ID' fields in the 'Process Validation' tab have been filled correctly."),"Dull")

Или вот так:

=IF(IF(AND(fileToExtract = "Update lead address", 
       weeklyCampaign_CSV_Export = TRUE,
       weeklyCampaign_CSV_Export_Save = TRUE,
       weeklyCampaign_SF_Append = TRUE,
       weeklyCampaign_Success_Error_TD_Upload = TRUE),
       QUERY(QUERY({sourceFile_dataRange},
                   "SELECT Col" & MATCH("Lead ID",         sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Street",          sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("City",            sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("State/Province",  sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Zip/Postal Code", sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Country (RB)",          sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Country",         sourceFile_labelRange,FALSE),1),
                   "SELECT Col1,
                           Col2,
                           Col3,
                           Col4,
                           Col5,
                           Col6,
                           Col7
                     WHERE Col1 IS NOT NULL", 1), 
       "Please, clarify if the 'Weekly Campaign CSV Export', 'Weekly Campaign CSV Export Save', 'Weekly Campaign SF Append' and 'Weekly Campaign Success Error TD Upload' processes have been completed."),"EVEN DULLER")

Я получаю соответственно следующие #VALUE! ошибок:

Error Function IF parameter 1 expects boolean values. But 'Please, clarify if the 'Source File' and 'Weekly Campaign ID' fields in the 'Process Validation' tab have been filled correctly.' is a text and cannot be coerced to a boolean.

А также:

Error Function IF parameter 1 expects boolean values. But 'Please, clarify if the 'Weekly Campaign CSV Export', 'Weekly Campaign CSV Export Save', 'Weekly Campaign SF Append' and 'Weekly Campaign Success Error TD Upload' processes have been completed.' is a text and cannot be coerced to a boolean.

Практически такая же ошибка при совмещении.

Как я могу с этим справиться?

P.S.

Пожалуйста, дайте мне знать, если вам нужны фиктивные данные, но, пожалуйста, имейте в виду, что у меня есть ограничения корпоративной безопасности, которые не позволяют мне делиться листами с кем-либо за пределами компании.


person I. Я. Newb    schedule 05.03.2019    source источник


Ответы (1)


У первого IF аргумент был неуместен.

Вместо того:

=IF(IF(AND(fileToExtract = "Weekly Campaign",
        sourceFile <> "",
        weeklyCampaignID <> ""), 
        QUERY(QUERY({sourceFile_dataRange}, ect...

А также:

 IF(IF(AND(fileToExtract = "Update lead address", 
           weeklyCampaign_CSV_Export = TRUE,
           weeklyCampaign_CSV_Export_Save = TRUE,
           weeklyCampaign_SF_Append = TRUE,
           weeklyCampaign_Success_Error_TD_Upload = TRUE),
       QUERY(QUERY({sourceFile_dataRange}, ect...

Должно было быть:

=IF(fileToExtract = "Weekly Campaign",
    IF(AND(sourceFile <> "",
           weeklyCampaignID <> ""), 
        QUERY(QUERY({sourceFile_dataRange}, ect...

А также:

 IF(fileToExtract = "Update lead address",
    IF(AND(weeklyCampaign_CSV_Export = TRUE,
           weeklyCampaign_CSV_Export_Save = TRUE,
           weeklyCampaign_SF_Append = TRUE,
           weeklyCampaign_Success_Error_TD_Upload = TRUE),
       QUERY(QUERY({sourceFile_dataRange}, ect...

Весь QUERY выглядит так:

=IF(fileToExtract = "Weekly Campaign",
    IF(AND(sourceFile <> "",
           weeklyCampaignID <> ""), 
        QUERY(QUERY({sourceFile_dataRange}, 
                    "SELECT Col" & MATCH("Lead ID",sourceFile_labelRange,FALSE)), 
                    "SELECT Col1, '" & weeklyCampaignID & "', 'Sent' 
                     WHERE Col1 IS NOT NULL 
                     LABEL '" & weeklyCampaignID & "' 'Campaign ID', 
                           'Sent'                     'Status'",1),
        "Please, clarify if the 'Source File' and 'Weekly Campaign ID' fields in the 'Process Validation' tab have been filled correctly."),

 IF(fileToExtract = "Update lead address",
    IF(AND(weeklyCampaign_CSV_Export = TRUE,
           weeklyCampaign_CSV_Export_Save = TRUE,
           weeklyCampaign_SF_Append = TRUE,
           weeklyCampaign_Success_Error_TD_Upload = TRUE),
       QUERY(QUERY({sourceFile_dataRange},
                   "SELECT Col" & MATCH("Lead ID",         sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Street",          sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("City",            sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("State/Province",  sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Zip/Postal Code", sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Country (RB)",        sourceFile_labelRange,FALSE) & ",
                           Col" & MATCH("Country",         sourceFile_labelRange,FALSE),1),
                   "SELECT Col1,
                           Col2,
                           Col3,
                           Col4,
                           Col5,
                           Col6,
                           Col7
                     WHERE Col1 IS NOT NULL", 1), 
       "Please, clarify if the 'Weekly Campaign CSV Export', 'Weekly Campaign CSV Export Save', 'Weekly Campaign SF Append' and 'Weekly Campaign Success Error TD Upload' processes have been completed.")))
person I. Я. Newb    schedule 06.03.2019