Закраска ячеек в Excel с помощью VBA

Узнай цену своей работы

Формулировка задачи:

Всем здрасте!
У меня вот возникла вот такая задача, нужно закрашивать ячейки, не не все в подряд... и тут возникла проблема.
Во вложенном файле выложил фото сетки.
Может кто знает как бы сделать так что бы программа различала текст? то есть.
пн, вт, ср, чт, пт. - дни недели
пн-пт - дни когда выходит данная программа.
а значит ячейки пн, вт, ср, чт, пт - должны быть закрашены...

Решение задачи: «Закраска ячеек в Excel с помощью VBA»

textual
Листинг программы
<font color="blue">Function</font> MyFunc(<font color="blue">ByVal</font> mDays <font color="blue">As</font> <font color="blue">String</font>, <font color="blue">ByVal</font> mDay <font color="blue">As</font> <font color="blue">String</font>) <font color="blue">As</font> <font color="blue">Boolean</font>
<font color="blue">Dim</font> xDay(<font color="darkblue"><b>1</b></font> <font color="blue">To</font> <font color="darkblue"><b>7</b></font>) <font color="blue">As</font> <font color="blue">String</font>, i <font color="blue">As</font> <font color="blue">Integer</font>, i1 <font color="blue">As</font> <font color="blue">Integer</font>, res() <font color="blue">As</font> <font color="blue">String</font>, mReturn <font color="blue">As</font> <font color="blue">Boolean</font>
<font color="blue">Dim</font> day1 <font color="blue">As</font> <font color="blue">Integer</font>, day2 <font color="blue">As</font> <font color="blue">Integer</font>, day3 <font color="blue">As</font> <font color="blue">Integer</font>
mDays = Replace(mDays, <font color="teal">" "</font>, <font color="teal">""</font>): mDay = Replace(mDay, <font color="teal">" "</font>, <font color="teal">""</font>) <font color="00AA00">' удаление пробелов</font>
xDay(<font color="darkblue"><b>1</b></font>) = <font color="teal">"пн"</font>: xDay(<font color="darkblue"><b>2</b></font>) = <font color="teal">"вт"</font>:: xDay(<font color="darkblue"><b>3</b></font>) = <font color="teal">"ср"</font>: xDay(<font color="darkblue"><b>4</b></font>) = <font color="teal">"чт"</font>
xDay(<font color="darkblue"><b>5</b></font>) = <font color="teal">"пт"</font>: xDay(<font color="darkblue"><b>6</b></font>) = <font color="teal">"сб"</font>: xDay(<font color="darkblue"><b>7</b></font>) = <font color="teal">"вс"</font>
mReturn = False
res = Split(mDays, <font color="teal">","</font>)
<font color="blue">For</font> i = <font color="darkblue"><b>0</b></font> <font color="blue">To</font> UBound(res)
    <font color="blue">If</font> res(i) Like <font color="teal">"??-??"</font> <font color="blue">Then</font>
        <font color="blue">For</font> i1 = <font color="darkblue"><b>1</b></font> <font color="blue">To</font> <font color="darkblue"><b>7</b></font>
            <font color="blue">If</font> <font color="blue">Mid</font>(res(i), <font color="darkblue"><b>1</b></font>, <font color="darkblue"><b>2</b></font>) = xDay(i1) <font color="blue">Then</font> day2 = i1
            <font color="blue">If</font> <font color="blue">Mid</font>(res(i), <font color="darkblue"><b>4</b></font>, <font color="darkblue"><b>2</b></font>) = xDay(i1) <font color="blue">Then</font> day3 = i1
            <font color="blue">If</font> mDay = xDay(i1) <font color="blue">Then</font> day1 = i1
        <font color="blue">Next</font>
        <font color="blue">If</font> day2 <= day1 <font color="blue">And</font> day1 <= day3 <font color="blue">Then</font> mReturn = True
    <font color="blue">End</font> <font color="blue">If</font>
    <font color="blue">If</font> res(i) Like <font color="teal">"??"</font> <font color="blue">And</font> (res(i) = mDay) <font color="blue">Then</font> mReturn = True
<font color="blue">Next</font>
MyFunc = mReturn
<font color="blue">End</font> <font color="blue">Function</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.444 из 5
Похожие ответы