Заранее благодарю! excel 2003 Создал макрос для добавления новых листов по текущей дате, только каждый раз приходится: 1. Курсором протягивать (дублируя верхнюю часть) 2. В столбце "Название" выравнивать все по левому краю 3. В листе "Касса" в ячейках "Общая сумма, сумма себ-ст" так же редактирую в ручную Вопрос в следующем, как сделать это автоматически, и что бы в листах прихода товара общее количество отнималось от количества продаж, тем самым показывая остаток на складе?
Заранее благодарю! excel 2003 Создал макрос для добавления новых листов по текущей дате, только каждый раз приходится: 1. Курсором протягивать (дублируя верхнюю часть) 2. В столбце "Название" выравнивать все по левому краю 3. В листе "Касса" в ячейках "Общая сумма, сумма себ-ст" так же редактирую в ручную Вопрос в следующем, как сделать это автоматически, и что бы в листах прихода товара общее количество отнималось от количества продаж, тем самым показывая остаток на складе?6ukhrat
3. В листе "Касса" в ячейках "Общая сумма, сумма себ-ст" так же редактирую в ручную
Откуда берутся изначальные цифры? Вбиваются вручную?
Предварительно переделал Ваш макрос, пункт 2 учтён:
[vba]
Код
Private Sub Workbook_Open()
Dim Otvet As String Dim NewSheet As Worksheet
Otvet = MsgBox("Внимательно просмотрите вашу дату, если она верна не задавайте одинаковую дату !!! Задать дату?", vbOKCancel, "Выход") If Otvet <> vbOK Then Exit Sub
Set NewSheet = Worksheets.Add NewSheet.Name = Date
Columns("A:A").HorizontalAlignment = xlLeft
With Range("A1:H1") .Font.ColorIndex = 5 .Interior.ColorIndex = 6 .HorizontalAlignment = xlCenter Range("E1:G1").Clear End With
3. В листе "Касса" в ячейках "Общая сумма, сумма себ-ст" так же редактирую в ручную
Откуда берутся изначальные цифры? Вбиваются вручную?
Предварительно переделал Ваш макрос, пункт 2 учтён:
[vba]
Код
Private Sub Workbook_Open()
Dim Otvet As String Dim NewSheet As Worksheet
Otvet = MsgBox("Внимательно просмотрите вашу дату, если она верна не задавайте одинаковую дату !!! Задать дату?", vbOKCancel, "Выход") If Otvet <> vbOK Then Exit Sub
Set NewSheet = Worksheets.Add NewSheet.Name = Date
Columns("A:A").HorizontalAlignment = xlLeft
With Range("A1:H1") .Font.ColorIndex = 5 .Interior.ColorIndex = 6 .HorizontalAlignment = xlCenter Range("E1:G1").Clear End With
Огромное спасибо за второй пункт! По поводу остального: при нажатие на кнопку добавить дату, открывается новый лист. И вот тут, приходится копировать с предыдущей даты-листа, начиная с А4 до М4, что бы вставить на текущий лист, далее удалять А2-А5 и С2-С5, что бы формула осталась, а данные вводятся вручную. Как то так...
Огромное спасибо за второй пункт! По поводу остального: при нажатие на кнопку добавить дату, открывается новый лист. И вот тут, приходится копировать с предыдущей даты-листа, начиная с А4 до М4, что бы вставить на текущий лист, далее удалять А2-А5 и С2-С5, что бы формула осталась, а данные вводятся вручную. Как то так...6ukhrat
gling, Ваш пример впринципе работает как нужно, только кнопка значительно мешает (лучше оставить добавление даты, по месседж боксу), и ячейки "Расхода и Кассы желательно делать пустыми"...
gling, Ваш пример впринципе работает как нужно, только кнопка значительно мешает (лучше оставить добавление даты, по месседж боксу), и ячейки "Расхода и Кассы желательно делать пустыми"...6ukhrat
gling, У вас идет ошибка out of range, но не суть столь важна, то что у меня выходит месседж бокс, меня устраивает, мне бы только после принятого условия по дате, получить открытие готового листа с формулами... В первом вашем случае, если не трогать условие оставить мой месседж, и ваш макрос на заполнение ячеек От А2 до D2 чтоб было пусто, а D2-D200 (B2*C2), G2-G200 (D2-F2*B2), H2 (sum D2-d200)
gling, У вас идет ошибка out of range, но не суть столь важна, то что у меня выходит месседж бокс, меня устраивает, мне бы только после принятого условия по дате, получить открытие готового листа с формулами... В первом вашем случае, если не трогать условие оставить мой месседж, и ваш макрос на заполнение ячеек От А2 до D2 чтоб было пусто, а D2-D200 (B2*C2), G2-G200 (D2-F2*B2), H2 (sum D2-d200)6ukhrat
Создал макрос для добавления новых листов по текущей дате,
Значит знаете где находятся макросы. Уберите макрос из книги и уберите знаки ' в макросе НовЛист. В листе пропишите все формулы как нужно его с этими формулами будет копировать. Можно вообще создать лист шаблон только с формулами и пусть его копирует, тогда и очищать ничего не надо будет. Шаблон можно скрыть его видно не будет.
Цитата
Создал макрос для добавления новых листов по текущей дате,
Значит знаете где находятся макросы. Уберите макрос из книги и уберите знаки ' в макросе НовЛист. В листе пропишите все формулы как нужно его с этими формулами будет копировать. Можно вообще создать лист шаблон только с формулами и пусть его копирует, тогда и очищать ничего не надо будет. Шаблон можно скрыть его видно не будет.gling
gling, Вам большое спасибо за тестовый пример! Тут еще один ньюанс, по поводу остатков, если у меня в листе "Поступление товара" имеется какойто товар по артиклу в столбце А, то как мне связать текущий лист добавленной даты, что б этот же артикул отнимался на складе, тем самым показывая сколько остатка на складе?
gling, Вам большое спасибо за тестовый пример! Тут еще один ньюанс, по поводу остатков, если у меня в листе "Поступление товара" имеется какойто товар по артиклу в столбце А, то как мне связать текущий лист добавленной даты, что б этот же артикул отнимался на складе, тем самым показывая сколько остатка на складе?6ukhrat
Что то про склад и про товар на складу в файле не видно. Для ответа на Ваш вопрос нужен файл с близкими к реальность данными. Попробуем совместно оптимизировать базу. Есть и у меня на работе такая проблема, но я не заморачивался и показывал сколько есть на складе (выписал не значить взял), если нет на складе то этого товара нет и в списке выбора.
Что то про склад и про товар на складу в файле не видно. Для ответа на Ваш вопрос нужен файл с близкими к реальность данными. Попробуем совместно оптимизировать базу. Есть и у меня на работе такая проблема, но я не заморачивался и показывал сколько есть на складе (выписал не значить взял), если нет на складе то этого товара нет и в списке выбора.gling