Что если бы мы могли заполнить дату, просто сославшись на число? Этот тип функций улучшит удобство использования в некоторых сценариях Excel.
Например: на мартовском листе, когда я наберу «7» в заданном столбце дат, ячейка, в которую я вставил значение, вернет «07/03/19» (или 03/07/19).
Если возможно, это означает, что мне нужно указать в коде VBA месяц и год для этого листа и изменить эту переменную для каждого отдельного листа (февраль и т. Д.). Если имена листов являются названиями месяцев (например, «Март»), может даже быть способ сделать это с помощью кода VBA с одним решением. Следующая формула использует преимущества этого, поэтому я думаю, что VBA может сделать это.
=MONTH(DATEVALUE(MID(CELL("filename";$A$1);FIND("]";CELL("filename";$A$1))+1;255)&" 1"))
Введите эту формулу на листе с именем «Март», и она вернет «3».
Я искал простой способ сделать это, но, насколько мне известно, пока нет ни одного (пока вы не несете свой свет :)). Функция проверки данных не поможет, насколько я знаю. Также важно, чтобы ячейка, в которую вставлен номер, сама заполнялась (а не другая ячейка).
Возможно ли это по крайней мере? Бьюсь об заклад, да. Мне сказали смотреть на функцию события, но я слишком мало знаю с VBA.