Работа с датой. VBA Excel

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

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

Моя задача такая. Мне надо создать график на любой год.
он должен начинаться с 1 числа и дня недели.
Январь - 2010 - 1 - пятница ..... 31 - воскресение
Февраль - 2010 - 1 - Понедельник ..... 28 - воскресение
Во вложенном фото, виден результат того что должно получится.

Решение задачи: «Работа с датой. VBA Excel»

textual
Листинг программы
<font color="blue">Sub</font> test()
<font color="blue">Const</font> MyYear = <font color="darkblue"><b>2010</b></font>: <font color="blue">Const</font> MyMonth = <font color="darkblue"><b>4</b></font> <font color="00AA00">' заменить на переменные</font>

<font color="blue">Dim</font> days <font color="blue">As</font> <font color="blue">Integer</font>: days = Day(DateSerial(MyYear, MyMonth + <font color="darkblue"><b>1</b></font>, <font color="darkblue"><b>0</b></font>))
    <font color="blue">With</font> ActiveSheet
        .Rows(<font color="teal">"1:2"</font>).ClearContents
        .Range(<font color="teal">"A2"</font>) = <font color="darkblue"><b>1</b></font>
        .Range(<font color="teal">"A2"</font>).Resize(, days).DataSeries
        <font color="blue">With</font> .Range(<font color="teal">"A1"</font>).Resize(, days)
            .FormulaR1C1 = <font color="teal">"=TEXT(DATE("</font> & MyYear & <font color="teal">", "</font> & MyMonth & <font color="teal">", R[1]C),"</font><font color="teal">"ддд"</font><font color="teal">")"</font>  <font color="00AA00">' м.б. придется <font color="teal">"ддд"</font> заменить на <font color="teal">"ddd"</font> - для англ. версии Win</font>
            .Value = .Value
        <font color="blue">End</font> <font color="blue">With</font>
    <font color="blue">End</font> <font color="blue">With</font>
<font color="blue">End</font> <font color="blue">Sub</font>

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


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

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

10   голосов , оценка 4 из 5