Вопрос следующий, при вводе в ячейку А10 и ей подобные, можно ли так сделать, чтобы вводить под месяцем только число, а остальное дописывалось само. К примеру ввел 19 и по формату ячеек (ДД) видно только число, а месяц 01.2018 в фоне дописывается сам, только для конкретных ячеек и для других месяцев аналогично.
В формате ячеек не уж то нельзя обратить ввод числа только для нужного месяца? Или как то сослаться на нужный месяц ...?
TiduSan написал: Или как то сослаться на нужный месяц ...
Да легко. Пишете макрос, который за вас будет разъяснять Excel, что 01 в той ячейке, это первое января, а 01 в этой ячейке - первое декабря. И всех делов на рыбью ногу.
Можно макросом. В модуль листа. И Диспетчер Имен посмотрите
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("DAYS")) Is Nothing And Target.Count = 1 Then
On Error Resume Next
For I = 1 To Range("DAYS").Areas.Count
If Not Intersect(Target, Range("DAYS").Areas(I)) Is Nothing Then
iMonth = I
Select Case I
Case 1, 3, 5, 7, 8, 10, 12
eDay = 31
Case 4, 6, 9, 11
eDay = 30
Case 2
eDay = 28 'для високосного года исправить на 29
End Select
Exit For
End If
Next
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target >= 1 And Target <= eDay Then
Target = DateSerial(2018, iMonth, Target)
Target.NumberFormat = "dd; @"
Else
MsgBox "Неверная дата!", vbCritical + vbOKOnly, "Ошибка"
Target = Empty
GoTo ExitSub
End If
End If
ExitSub:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub