![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 26.07.2010
Сообщений: 3
|
![]()
Добрый день Уважаемае программисты,
Помогите пожалуйста создать VBA код. Есть таблица с данными: "Дата поставок", "Наименование продукта", "адрес компании доставки". Предполагается составить отчет о прогнозе поставок на 10 лет с периодичностью 1 год. как написать код, чтобы сгенерировать новые даты на 10-летний период каждого продукта и данные с "Наименование продукта", "адрес компании доставки" скопировались в строку новой даты соотвествено.Посмотрите пожалуйста исходную таблицу в приложении |
![]() |
![]() |
![]() |
#2 | |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
![]() Цитата:
Правильно поставленная задача - три четверти решения.
|
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 26.07.2010
Сообщений: 3
|
![]()
Спасибо, что ответили. Я в принципе уже почти сделал этот код, хотелось бы оптимизировать его. Посмотрите на код:
Private Sub CommandButton1_Click() Dim stDate As Date Dim endDate As Date Dim curDate As Date Dim insRow As Long Dim i As Long Dim YearStep As Long insRow = 1 i = 1 endDate = Int(Sheet1.Cells(1, 10).Value2) While Sheet1.Cells(i, 2).Value2 <> "" stDate = Int(Sheet1.Cells(i, 2).Value2) curDate = stDate YearStep = Int(Sheet1.Cells(i, 6).Value2) While (Int(curDate) <= Int(endDate)) Sheet1.Cells(insRow, 3).Value = curDate Sheet1.Cells(insRow, 3).NumberFormat = "DD/MM/YYYY" Sheet1.Cells(insRow, 4) = Sheet1.Cells(i, 7) Sheet1.Cells(insRow, 5) = Sheet1.Cells(i, 8) curDate = DateAdd("yyyy", YearStep, curDate) insRow = insRow + 1 Wend i = i + 1 Wend MsgBox ("Это все") End Sub По этому коду генерируются новые даты, согласно заданой частоте и копируются колонки "Наименование" и "Место" к соответствующей дате Вопрос, как скопировать все колонки диапазоном, в случае, когда их будет больше |
![]() |
![]() |
![]() |
#4 |
Регистрация: 26.07.2010
Сообщений: 3
|
![]()
Ребята, создал все-таки код, спасибо за ваш форум, за то что вы есть и особенно рекомендациям sasha_prof. Нашел нужный фрагмент из другого отдела. Буду рад всем комментариям, если есть еще как-нибудь минимизировать.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Добавление новых строк на 2 листах по условиям | Uralmaster | Microsoft Office Excel | 8 | 27.02.2011 07:16 |
добавление новых строк в динамическую матрицу. | ensoleille | Помощь студентам | 6 | 17.01.2011 18:44 |
Чтение новых строк из файла | Delphinchik | PHP | 5 | 27.11.2010 22:49 |
Доработка добавления новых строк | Sniper1 | Microsoft Office Excel | 1 | 06.04.2010 14:07 |
Qt. QSqlTableModel. Добавление новых строк. | HIC | Qt и кроссплатформенное программирование С/С++ | 0 | 07.07.2009 16:31 |