Я использую приведенную ниже формулу для ввода имени моего листа Excel в ячейку. Когда я пытаюсь использовать условное форматирование в этой ячейке и использую опцию «использовать формулу, чтобы определить, какие ячейки форматировать», для форматирования ячейки данные не изменяются.

=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)

Я пытаюсь сделать так, чтобы имя моего листа (дата, написанная как 010117) отображалось как 01.01.17. Поскольку Excel не позволяет мне использовать символ "/" в названии листа, условное форматирование является моей единственной опцией, но в данном случае это не работает.

Опции?

1 ответ1

0

Вот UDF, который вы можете использовать, чтобы получить имя листа в желаемом стиле. Обратите внимание, что он не проверяет, является ли это допустимым форматом даты, он просто добавляет / между каждыми двумя числами. Поместите это в модуль Workbook.

Function sheetNameToDate()
Application.Volatile
Dim shtNm As String
shtNm = ActiveSheet.Name
sheetNameToDate = Left(shtNm, 2) & "/" & Mid(shtNm, 3, 2) & "/" & Right(shtNm, 2)
End Function

Так, в листе, в любой клетке, вы можете ввести =sheetNameToDate() , и он будет возвращать имя листа в формате 01/01/17 02/01/17 и т.д. Затем вы можете сделать условный формат, например, =sheetNameToDate()="01/01/17" и он вернет TRUE если это так.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .