Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/макрос на вывод по дате - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос на вывод по дате (Макросы Sub)
макрос на вывод по дате
regitr Дата: Пятница, 10.01.2014, 20:11 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
[vba]
Код
1 Sub copy_date()
2 Dim i&, sh As Worksheet, iCell As Range, iDate As Date, lsRow&
3 Set sh = ThisWorkbook.Sheets("15 äíåé äî îêîí÷àíèÿ")
4 iDate = Date + 15
5 For i = 1 To ThisWorkbook.Sheets.Count
6 If Sheets(i).Name = "Äîãîâîðà" Then
7 With Sheets(i)
8 For Each iCell In .Range("K3:K" & .Cells(Rows.Count, "K").End(xlUp).Row)
9 If ((iCell <= iDate) And (iCell >= Date)) Then lsRow = sh.Cells(Rows.Count, "K").End(xlUp).Row + 1: _
10 .Range("A" & iCell.Row & ":K" & iCell.Row).Copy Destination:=sh.Range("A" & lsRow)
11 Next iCell
12 End With
13 End If
14 Next i
15 End Sub
[/vba]

в строке 8 выдает icell=Error 2042

сам макрос выдает ошибку run time error 13


Сообщение отредактировал Serge_007 - Пятница, 10.01.2014, 20:34
 
Ответить
Сообщение[vba]
Код
1 Sub copy_date()
2 Dim i&, sh As Worksheet, iCell As Range, iDate As Date, lsRow&
3 Set sh = ThisWorkbook.Sheets("15 äíåé äî îêîí÷àíèÿ")
4 iDate = Date + 15
5 For i = 1 To ThisWorkbook.Sheets.Count
6 If Sheets(i).Name = "Äîãîâîðà" Then
7 With Sheets(i)
8 For Each iCell In .Range("K3:K" & .Cells(Rows.Count, "K").End(xlUp).Row)
9 If ((iCell <= iDate) And (iCell >= Date)) Then lsRow = sh.Cells(Rows.Count, "K").End(xlUp).Row + 1: _
10 .Range("A" & iCell.Row & ":K" & iCell.Row).Copy Destination:=sh.Range("A" & lsRow)
11 Next iCell
12 End With
13 End If
14 Next i
15 End Sub
[/vba]

в строке 8 выдает icell=Error 2042

сам макрос выдает ошибку run time error 13

Автор - regitr
Дата добавления - 10.01.2014 в 20:11
AndreTM Дата: Пятница, 10.01.2014, 20:59 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 500 ±
Замечаний: 0% ±

2003 & 2010
Код, конечно, офигительный :)
Например, до меня не доходит, чем (кроме нагрузки и времени) конструкция
[vba]
Код
For i = 1 To ThisWorkbook.Sheets.Count
  If Sheets(i).Name = "Äîãîâîðà" Then
   With Sheets(i)
   End With
  End If
Next i
[/vba]отличается от[vba]
Код
On Error Goto ...
With Sheets("Äîãîâîðà")
End With
On Error Resume Next
[/vba]
Ну и Серж прав - где пример и где описание, того, чего желаете получить?


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
СообщениеКод, конечно, офигительный :)
Например, до меня не доходит, чем (кроме нагрузки и времени) конструкция
[vba]
Код
For i = 1 To ThisWorkbook.Sheets.Count
  If Sheets(i).Name = "Äîãîâîðà" Then
   With Sheets(i)
   End With
  End If
Next i
[/vba]отличается от[vba]
Код
On Error Goto ...
With Sheets("Äîãîâîðà")
End With
On Error Resume Next
[/vba]
Ну и Серж прав - где пример и где описание, того, чего желаете получить?

Автор - AndreTM
Дата добавления - 10.01.2014 в 20:59
regitr Дата: Суббота, 11.01.2014, 16:04 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
исходный файл в который макрос впихнут большой не удовлетворяет требованию, а в чистовом варианте с небольшим количеством данных макрос работает. макрос делает выборку по дате удовлетворяющим условию и выводит соответствующие строки в отдельный лист
 
Ответить
Сообщениеисходный файл в который макрос впихнут большой не удовлетворяет требованию, а в чистовом варианте с небольшим количеством данных макрос работает. макрос делает выборку по дате удовлетворяющим условию и выводит соответствующие строки в отдельный лист

Автор - regitr
Дата добавления - 11.01.2014 в 16:04
regitr Дата: Воскресенье, 12.01.2014, 18:18 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
всем спасибо нашел решение, тему можно закрыть
 
Ответить
Сообщениевсем спасибо нашел решение, тему можно закрыть

Автор - regitr
Дата добавления - 12.01.2014 в 18:18
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос на вывод по дате (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!