Как я могу вернуть адрес прямого прецедента ячейки? И использовать его в формуле, например, OFFSET() или IF()?
то есть:
- Ячейка с адресом C1 указывает на ячейку D30 (либо на том же листе, либо на другой в той же книге)
- CELL (C1) возвращает C1, а не D30, INDEX (C1) возвращает значение C1.
- Диапазон ("С1").DirectPrecedent должен работать, но я не могу представить его в каком-либо рабочем формате.
Я попытался сделать функцию:
Function DirectPrecedent(rng As Range)
Range(rng).DirectPrecedents
End Function
Который также, кажется, не работает (но я не знаю VBA, поэтому я не удивлен там).
Итак, что я могу сделать, чтобы получить что-то полезное, как:
OFFSET(DirectPrecedentOf(C1),0,3)
- ячейка 3 столбца справа от D30- или:
IF(DirectPrecedentOf(C1)=TODAY(),"YES","NO")
- если D30 = сегодняшняя дата, вернуть "YES"
Возможно ли это, указывает ли C1 на D30 или на «Sheet2»!D30?
РЕДАКТИРОВАТЬ: Было предложено уточнить, ПОЧЕМУ мне это нужно, так вот больше информации:
B1: OFFSET(DirectPrecedentOf(C1),0,3)
C1: 'Sheet2'!D30
'Sheet2'!D30:D40: List of dates
'Sheet2'!G30:G40: List of dollar amounts
По сути, я хочу что-то вроде «В столбце C, введите дату из столбца« Sheet2 »!D, В ячейку B1 поместите значение из трех ячеек справа от того, какая ячейка вызывается в столбце C "