Автоматизировать заполнение таблицы для счета

342
northerner

Мне нужно выставлять счета кому-то каждую неделю. Я хотел бы создать шаблон, так как 90% информации в каждом счете-фактуре одинаково, а остальные 10% следуют простым правилам.

Каждый счет имеет номер, который на 1 больше, чем предыдущий. Так в Excel есть способ, которым я мог бы иметь автоинкремент между экземплярами шаблона? Например, если последний шаблон имел значение 1 для раздела счета, как следующий автоматически может быть 2?

Также, как даты могут быть увеличены на 7 дней?

Я думаю, что шаблон мог как-то вспомнить предыдущий, а затем открыть его с обновленной информацией и сохранить его под новым именем.

1
Excel хранит даты в единицах дней. Чтобы увеличить дату на 7 дней, просто добавьте к ней 7 (читаемый вид даты просто форматирует). Вам, вероятно, понадобится VBA для серийного номера. Сохраните текущий номер. Активизируйте его автоматически, например, распечатывая, или добавьте макрос, чтобы вручную нажать кнопку, чтобы увеличить его, когда вы захотите. Был ряд вопросов о подобной сериализации. Быстрый поиск должен дать вам несколько примеров решений. fixer1234 6 лет назад 0
Проверьте https://superuser.com/questions/1313372/increment-sequential-numbers-in-4-different-cells-after-printing fixer1234 6 лет назад 0

2 ответа на вопрос

0
Ian

Вы можете сделать довольно хороший взлом без написания любого VBA. Я использовал функцию TODAY (), чтобы получить текущую дату. Затем я вычел первую дату счета и разделил на 7 (как сказал @ fixer1234, Excel хранит даты в днях, поэтому 1 неделя = 7). Я также добавил 1, поэтому первый счет-фактура является счетом № 1.

Excel invoice

Единственное предостережение при таком подходе заключается в том, что если вы не выставляете счет-фактуру еженедельно или пропускаете неделю, он выбрасывает номера ваших счетов. Это станет намного проще, если вы будете требовать, чтобы номера счетов-фактур просто были уникальными, а не последовательными.

0
Ian

Альтернативное решение, которое может работать еще лучше, состоит в том, чтобы отделить данные счета-фактуры от шаблона. Здесь я поместил данные в лист с именем data и отформатировал их в виде таблицы. Это необходимо, потому что это значительно облегчает шаблону всегда получать последние данные. После добавления новых данных вы сортируете по номеру счета по убыванию. Или, если вы хотите повторно распечатать старый счет, вы можете выполнить фильтрацию по номеру счета.
Invoice data

Затем на листе шаблона вы просто обращаетесь к верхней строке таблицы данных для своих значений: Invoice template