Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Сравнение дат(месяцев) разных лет
 
Цитата
написал:
romlel , в следующий раз тема с подобным названием будет закрыта без предупреждения, Вы не первый день на форме ПРАВИЛА ФОРУМА, Обязательно к прочтению перед созданием новой темы
Приветствую, ознакомился с правилом. Благодарю.
Сравнение дат(месяцев) разных лет
 
Понял, благодарю.
Сравнение дат(месяцев) разных лет
 
Приветствую всех!
У меня вопрос есть к Вам. В листе "Данные" я создал плоскую таблицу и вел функцию ВПР(ОИСКПОЗ) на основании таблицы в листе "Итоговая таблица". Со 2 строки по 12 заработало, но дальше пишет ошибку "Н/Д". Я переделывал формулу на ИНДЕКС(ПОИСКПОЗ), но безрезультатно. Почему так происходит?
Изменено: Sanja - 21.04.2026 10:29:56
Увеличение и уменьшение размера шрифта через макрос
 
Все, заработало, благодарю сердечно! :)  
Увеличение и уменьшение размера шрифта через макрос
 
Сделал, как ты показал и вот, что у меня получилось. Левая часть текста осталось, как нужно, а другие все уменьшились... А надо, чтобы верхняя строка оставалась крупным.

2026.04.10 ЛРР: gdgdggdf

2026.04.10 ЛРР: dgggfdf
2026.04.10 ЛРР: gdfgfd

Мне кажется, нужно добавить третье Target.Characters
Изменено: romlel - 10.04.2026 10:39:33
Увеличение и уменьшение размера шрифта через макрос
 
Еще раз протестировал. Все хорошо, но нужно немножко отредактировать ту часть, которую я озвучил выше. Еще раз скину скрин, какой результат хотим увидеть, и часть кода, где необходимо отредктировать:
If Len(InputStr) = 0 Then Exit Sub    Do
       If InStr(Target.Value, String(2, Chr(10))) = 0 Then Exit Do
       Target.Value = Replace(Target.Value, String(2, Chr(10)), Chr(10))
       DoEvents
    Loop
   If Len(Target.Value) = 0 Then
       Target.Value = Format(Date, "yyyy.mm.dd") + " " + GetCutUserName() + ": " + InputStr
   Else
       Target.Value = Format(Date, "yyyy.mm.dd") + " " + GetCutUserName() + ": " + InputStr + Chr(10) + Chr(13) + Target.Text
   End If
   With Target.Characters(1, 17).Font
       .Name = "Calibri"
       .FontStyle = "обычный"
       .Size = 15
       .Color = -65536
       End With
   With Target.Characters(17, Len(Target.Value) - 16).Font
       .Name = "Calibri"
       .FontStyle = "обычный"
       .Size = 11
       .Color = -16777216
   End With
End If

Такой результат хочу увидеть:
2026.04.09 ЛРР: fesfefes
2026.04.09 ЛРР: sdfsfsf
2026.04.09 ЛРР: sfdsdsd
2026.04.09 ЛРР: czdcsc
Изменено: romlel - 10.04.2026 09:58:03
Увеличение и уменьшение размера шрифта через макрос
 
Благодарю. Но уточняю, нужно отредактировать именно эту часть кода:

If Len(Target.Value) = 0 Then        Target.Value = Format(Date, "yyyy.mm.dd") + " " + GetCutUserName() + ": " + InputStr
   Else
       Target.Value = Format(Date, "yyyy.mm.dd") + " " + GetCutUserName() + ": " + InputStr + Chr(10) + Chr(13) + Target.Text
   End If
   With Target.Characters(1, 17).Font
       .Name = "Calibri"
       .FontStyle = "обычный"
       .Size = 15
       .Color = -65536
       End With
   With Target.Characters(17, Len(Target.Value) - 16).Font
       .Name = "Calibri"
       .FontStyle = "обычный"
       .Size = 11
       .Color = -16777216
   End With
End If

Чтобы получился вот такой результат:

2026.04.09 ЛРР: fesfefes
2026.04.09 ЛРР: sdfsfsf
2026.04.09 ЛРР: sfdsdsd
2026.04.09 ЛРР: czdcsc
Увеличение и уменьшение размера шрифта через макрос
 
Вот, вот такой результат должен получиться ниже. Нижние строки маленьким шрифтом, а верхняя строка большим шрифтом:

2026.04.09 ЛРР: fesfefes
2026.04.09 ЛРР: sdfsfsf
2026.04.09 ЛРР: sfdsdsd
2026.04.09 ЛРР: czdcsc
Увеличение и уменьшение размера шрифта через макрос
 
Супер, благодарю за код.
В дополнение хотел бы тоже самое с текстом, чтобы нижние строки помечены маленьким шрифтом, только оставить верхнюю строку большим шрифтом. Смотрите фото.
Изменено: romlel - 09.04.2026 17:17:02
Запретить изменение ячейки в определенном диапазоне
 
Понял, благодарю.
Увеличение и уменьшение размера шрифта через макрос
 
Благодарю за попытку помочь, но это не то.

Сейчас тут скину код VBA.
Там только немножко изменить нужно.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Row < 4 Then Exit Sub
If Cells(1, Target.Column).Text = "T" Then
   InputStr = InputBox("Новый комментарий от " + Format(Date, "yyyy.mm.dd") + " " + GetCutUserName() + " :", "Комментарий")
   If Len(InputStr) = 0 Then Exit Sub
   If Len(Target.Value) = 0 Then
       Target.Value = Format(Date, "yyyy.mm.dd") + " " + GetCutUserName() + ": " + InputStr
   Else
       Target.Value = Format(Date, "yyyy.mm.dd") + " " + GetCutUserName() + ": " + InputStr + Chr(10) + Chr(13) + Target.Text
   End If
   With Target.Characters(1, 17).Font
       .Name = "Calibri"
       .FontStyle = "обычный"
       .Size = 15
       .Color = -65536
       End With
   With Target.Characters(17, Len(Target.Value) - 16).Font
       .Name = "Calibri"
       .FontStyle = "обычный"
       .Size = 11
       .Color = -16777216
   End With
End If

If Cells(1, Target.Column) = "D" Then
InputStr = InputBox("Введите новую дату")
intA = Len(Target.Text)

If Len(InputStr) = 0 Then Exit Sub
   Target.Value = InputStr + Chr(10) + Chr(13) + Target.Text
   With Target.Characters(Len(InputStr) + 2, Len(Target.Value) - Len(InputStr)).Font
       .Name = "Calibri"
       .Size = 7
       .Color = -16777216
   End With
   
End If
End Sub
Function GetFullUserName()
   Dim objADSysInfo As Object, objUser As Object
   Set objADSysInfo = CreateObject("ADSystemInfo")
   Set objUser = GetObject("LDAP://" & objADSysInfo.UserName)
   GetFullUserName = objUser.DisplayName
End Function

Function GetCutUserName()
UN = GetFullUserName()
GetCutUserName = Left(UN, 1) + Mid(UN, InStr(UN, " ") + 1, 1) + Mid(UN, InStr(InStr(UN, " ") + 1, UN, " ") + 1, 1)
End Function
Запретить изменение ячейки в определенном диапазоне
 
Проверил. Все работает. Новый вопрос появился, при запрете на изменение ячейки не могу скрыть или раскрыть строки/столбцы, Можно как-то написать в коде, чтобы смог скрывать и раскрывать строки/столбцы?
Запретить изменение ячейки в определенном диапазоне
 
Еще последний вопрос: в каждый лист нужно ставить код, если у меня несколько листов?
Запретить изменение ячейки в определенном диапазоне
 
Понял, огромное спасибо. Оказалось куда проще:)
Увеличение и уменьшение размера шрифта через макрос
 
Уточнение. Нужно, чтоб не было разделения между абзацами.
Запретить изменение ячейки в определенном диапазоне
 
Цитата
написал:
Sub Макрос1()  With ActiveSheet    .Cells.Locked = False    .Columns("A:A").Locked = True    .Protect Password:="0000"  End WithEnd Sub
Благодарю, работает. Уточнение: например, я сам хочу изменить ячейки, для этого нужна пароль, что-то наподобие IputBox "Введите пароль", а то нажимаю на столбец и никак не откликается.
Запретить изменение ячейки в определенном диапазоне
 
Приветствую всех!

Такой вопрос. Какой код нужен в VBA, чтобы запретить изменение ячейки, например, в столбце А или в столбцах А:В., а если хотим изменить, то только через пароль?
P.s.: не весь лист, а конкретный диапазон. Я новичок.
Увеличение и уменьшение размера шрифта через макрос
 
Нужно рассчитать через код VBA, а куда разместить, не важно.
Увеличение и уменьшение размера шрифта через макрос
 
Направил файл с желаемым результатом.
Увеличение и уменьшение размера шрифта через макрос
 
Приветствую всех!
Просьба помочь разобраться с кодом переноса строки с уменьшением шрифта вниз и без всякого разделения на 1 шаг.
Скопировал код и решил немного отредактировать по-другому. Не совсем понимаю, как записать.
А также настроить дату. Необходимо ее увеличить сверху. Буду благодарен.
Пример снизу:
Текущий месяц в УФ
 
Благодарю за ответ всем! У меня получилось по-своему, но Ваша формула пригодилась в УФ.
Текущий месяц в УФ
 
Не получается, слишком большой объем файла.
Текущий месяц в УФ
 
Добрый день всем!

Помогите мне пожалуйста. Не могу понять, как создать формулу в условном форматировании так, чтобы загорелся красный цвет в текущем месяце.
=ЕСЛИ($AF$6;И(ЗНАЧЕН(ЛЕВСИМВ($B8;10))<DD$6;ЗНАЧЕН(ЛЕВСИМВ($C8;10))>AF$6;$E8=14);"") - это я создал, но результат выдает иной, высвечивается все шрифты на все месяцы и годы, а нужно, чтобы на текущий месяц. Искал все варианты, но не смог найти. Использовал функцию ТДАТА(), СЕГОДНЯ(), = , МЕСЯЦ(). Если вариантов нет, то подскажите код программы в макросе. Но желательно через условное форматирование, т.к. на мой взгляд проще. Подскажите пожалуйста. Буду благодарен.
Ниже пример, как должно получиться (синим марком обвел).
Страницы: 1
Наверх