Уважаемые форумчане, подскажите ещё момент один, по формулам предложенным уважаемыми _Boroda_ и китин, когда меняется месяц с 31 на 30 ну или 29, то остается один-два пустых столбца, и они считаются в выходные так как не заполнены, понятно, что можно поставить в AI15
Код
=СЧЁТЕСЛИ(C15:AG15;"В")
выходные уже конечно не считаются, но не эстетично получается.... как их скрывать\удалять автоматически? :shy:
Спасибо.
Уважаемые форумчане, подскажите ещё момент один, по формулам предложенным уважаемыми _Boroda_ и китин, когда меняется месяц с 31 на 30 ну или 29, то остается один-два пустых столбца, и они считаются в выходные так как не заполнены, понятно, что можно поставить в AI15
Код
=СЧЁТЕСЛИ(C15:AG15;"В")
выходные уже конечно не считаются, но не эстетично получается.... как их скрывать\удалять автоматически? :shy:
_Boroda_, ну не совсем так, чтобы не считались пустые ячейки за выходные это я решила, даже проще , но об этом я писала в первом посте, а вот чтобы столбцы "прятались" или удалялись, как это решить? Один умный человек, что это могут только МАКРОСы ,а кто это такие и как их варить я не знаю.
_Boroda_, ну не совсем так, чтобы не считались пустые ячейки за выходные это я решила, даже проще , но об этом я писала в первом посте, а вот чтобы столбцы "прятались" или удалялись, как это решить? Один умный человек, что это могут только МАКРОСы ,а кто это такие и как их варить я не знаю.Яриша
Яриша, формулы не умеют скрывать столбцы. Так подойдет? [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("p10")) Is Nothing Then Dim kol As Integer kol = Cells(10, "t") - Cells(10, "p") Columns(3).Resize(, kol + 1).Hidden = False If kol < 30 Then Columns(3 + kol + 1).Resize(, 31 - kol - 1).Hidden = True End If End Sub
[/vba] Чтобы посмотреть код, правой кнопкой мыши щелкните по ярлычку листа-исходный текст.
Яриша, формулы не умеют скрывать столбцы. Так подойдет? [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("p10")) Is Nothing Then Dim kol As Integer kol = Cells(10, "t") - Cells(10, "p") Columns(3).Resize(, kol + 1).Hidden = False If kol < 30 Then Columns(3 + kol + 1).Resize(, 31 - kol - 1).Hidden = True End If End Sub
[/vba] Чтобы посмотреть код, правой кнопкой мыши щелкните по ярлычку листа-исходный текст.Manyasha
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) <> "P10" Then Exit Sub Application.ScreenUpdating = 0 For i = 31 To 33 If Cells(13, i) = 2 Then Columns(i).Hidden = True Else Columns(i).Hidden = False End If Next i End Sub
[/vba]
Еще вариант [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) <> "P10" Then Exit Sub Application.ScreenUpdating = 0 For i = 31 To 33 If Cells(13, i) = 2 Then Columns(i).Hidden = True Else Columns(i).Hidden = False End If Next i End Sub