В файле часть сотрудников выделена курсивом, часть - нет. Мне необходима функция, которая бы возвращала значение "1" или "0" в ячейку напротив в зависимости от того, каков формат ячейки-аргумента (курсив или не курсив).
Текст, который я написал:
[vba]
Код
Function КУРСИВ(cl) Dim k As Integer Dim n As Integer k = 1 n = 0 If Range("cl").Font.Italic = True Then k Else: n End Function
[/vba]
Видимо, неправильна часть: If Range("cl").Font.Italic = True Но как её сделать правильно - не могу сообразить.
Здравствуйте!
В файле часть сотрудников выделена курсивом, часть - нет. Мне необходима функция, которая бы возвращала значение "1" или "0" в ячейку напротив в зависимости от того, каков формат ячейки-аргумента (курсив или не курсив).
Текст, который я написал:
[vba]
Код
Function КУРСИВ(cl) Dim k As Integer Dim n As Integer k = 1 n = 0 If Range("cl").Font.Italic = True Then k Else: n End Function
[/vba]
Видимо, неправильна часть: If Range("cl").Font.Italic = True Но как её сделать правильно - не могу сообразить.mlader
Function КУРСИВ(cl) Dim k As Integer Dim n As Integer k = 1 n = 0 If Range(cl.Address).Font.Italic = True Then КУРСИВ = k Else: КУРСИВ = n End If End Function
[/vba]
[vba]
Код
Function КУРСИВ(cl) Dim k As Integer Dim n As Integer k = 1 n = 0 If Range(cl.Address).Font.Italic = True Then КУРСИВ = k Else: КУРСИВ = n End If End Function
Борода, я тока учусь ВБА, есть вопросы по тексту: Зачем дополнительные переменные k, n можно ведь сразу функцию курсив объявить тип integer и по условию возвращать в функции либо 0, либо 1. И зачем строка:
Код
aa=cl
?
Борода, я тока учусь ВБА, есть вопросы по тексту: Зачем дополнительные переменные k, n можно ведь сразу функцию курсив объявить тип integer и по условию возвращать в функции либо 0, либо 1. И зачем строка:
aa=cl просто затесалась случайно. Конечно не нужна она. И переменные не нужны, можно все гораздо проще сделать. А почему я не переделал - я же не знаю, вдруг у человека есть какой-то тайный смысл именно в таком написании? Я просто подправил, фактически не меняя логику. Можно вообще так написать [vba]
Код
Function КУРСИВ(cl) Randomize КУРСИВ = -Range(cl.Address).Font.Italic End Function
[/vba]
aa=cl просто затесалась случайно. Конечно не нужна она. И переменные не нужны, можно все гораздо проще сделать. А почему я не переделал - я же не знаю, вдруг у человека есть какой-то тайный смысл именно в таком написании? Я просто подправил, фактически не меняя логику. Можно вообще так написать [vba]
Код
Function КУРСИВ(cl) Randomize КУРСИВ = -Range(cl.Address).Font.Italic End Function