2016-07-05 2 views
0

Первый раз здесь, извините, если я делаю что-то неправильноExcel макрос, дата dd.mm +1

Я только что узнал о первенствовать макросы, и я думаю, что они мне очень помогают, но я не на самом деле в программировании и все эти вещи

Я сделал несколько макросов, и это было очень легко, но это один не является, по крайней мере, не для меня, я надеюсь, что вы можете помочь мне

Я уже пробовал много такие как NumberFormat и Format (...), но он не работал, как я хотел, чтобы он работал

Wh на что я хочу:

я получаю первенствовать документы с определенной датой в ячейке [F6] (отформатированный dd.mm), как это: «01,08», это всегда 01 (первый день месяца)

прямо сейчас Я хочу макрос, который примет эту дату, и каждый раз, когда я использую макрос, я хочу, чтобы он вставлял следующий день в ячейку, которую я выбрал сейчас (ActiveCell)

поэтому, когда я впервые использую свой макрос в этот документ, я хочу, чтобы он вставлял «02.08» в текущую ячейку, которую я выбрал

следующий раз, когда я использую его «03.08» и т. д.

Надеюсь, вы меня понимаете и можете мне помочь

+1

Использование 'DateAdd':' DateAdd (. "Д", 1, DateValue (диапазон ("F6") Значение)) '« "D" означает день, 1 один день и DateValue (Диапазон («F6»). Значение) получает дату, в которую вы хотите добавить день (вы должны, конечно, изменить «F6») – gizlmo

+0

http://analysistabs.com/excel-vba/write-data-to-worksheet -cell/и вы можете просто добавлять дни к датам или использовать DATEADD. –

ответ

0

Попробуйте это. Обратите внимание, что при закрытии книги i сбрасывается на 0. Если вы хотите сохранить i между сеансами, вы должны записать его в ячейку, а затем ссылаться на эту ячейку.
Сотовый F6 должен быть правильно отформатирован как дата.

Dim i As Long 

Sub next_day() 
    i = i + 1 
    Selection = Range("F6").Value + i 
    Selection.NumberFormat = "dd.mm" 
End Sub 
Смежные вопросы