Что не так с этой формулой Excel? - PullRequest
1 голос
/ 18 октября 2011

У меня есть эта формула =IF(G6="", "", CONCATENATE("[",INDIRECT(G6),"]","Sheet1","!$A1")).

Это чтение Excel file name из столбца G6, а затем чтение Column A из Sheet1.

Это даетневерно Cell Reference Error.Что-то не так с этим?

Ответы [ 4 ]

3 голосов
/ 18 октября 2011

Это то, что вам нужно:

=IF(G6="", "", INDIRECT(CONCATENATE("'[",G6,"]Sheet1'!$A1")))

Если G6 содержит текст zipcodes-phoenixTEST.xlsx, то формула эквивалентна

='[zipcodes-phoenixTEST.xlsx]Sheet1'!$A1

, что даст значениеячейка A1 из Sheet1 файла zipcodes-phoenixTEST.xlsx

0 голосов
/ 18 октября 2011

Я делал это в прошлом,

Сначала вам нужно открыть файл Excel, который вы читаете / ищете, и открыть.Затем вы должны использовать INDIRECT после CONCATENATE:

INDIRECT(CONCATENATE("[", G6, "]", "Sheet1","'!$A1"))

ПРИМЕЧАНИЕ

Вы забываете ' до ! в "!$A1" следуетбыть "'!$A1"

0 голосов
/ 18 октября 2011

Этот работал для меня:

=IF(G6=""; ""; CONCATENATE("[";INDIRECT("G6");"]";Sheet1!$A1))

Мой Excel говорит мне, что я должен использовать точки с запятой (;) в функциях (хотя у меня нет английской версии). Также не следует делить Sheet1 и address - они будут работать только при совместном использовании: Sheet1! $ A1. Это также не должно быть заключено в "".

0 голосов
/ 18 октября 2011
=IF(G6="", "", CONCATENATE("[",INDIRECT("G6"),"]",Sheet1!$A1))

Вы пропустили двойную кавычку вокруг G6

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...