Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Выборка данных в Excel_VBA Добавлено: 09.07.08 13:22  

Автор вопроса:  vlad_lutek | Web-сайт: not | ICQ: not 
Здравствуйте!
Я только начинаю программировать на VBA.
Пожалуйста, помогите, разобраться с кодом...
 
Имеется отчет на листе1 по данным с непериодичным посекундным шагом времени от 00:00:.. до 23:59:..
(за сутки).
Необходимо сделать выборку данных по часовому интервалу от 00-:-01ч до 23-:-24ч и выложить на лист2 в виде столбца данных по часам за период от 00-:-01ч до
23-:-24ч. Вид отчета приведен сокращенно ниже..
Я написал следующий код(пишу сокращенно):
         .
         .
         Sum=0
         Aver=0
         N=5
 ' подсчет ячеек - конструктивно беру с 0:00:03(на листе excel соотвествует выбранной ячейке)
         J=4
         .
         .
         For I= 0 to 23
v_point: Do While Cells(N,2) <> ""
         VremStr = Cells(J+1, 4).Value ' время
         DataStr = Cells(J+1, 5).Value 'данные

call vznach()
             Sub vznach()
             DlStr = Len(VremStr)
             IF DlStr <>8 Then
             TimeZone =Left(VremStr,1) Else
             TimeZone=Left(VremStr,2)
             TimeC =Val(TimeZone)
             End If

'Делаю в подпрограмме числовую величину времени для работы с циклом по выборке значений от времени
             J=J+1
             N=N+1
       
          IF TimeC =I and DateStr <> "" Then

'При истинном условии здесь суммирую и считаю среднеарифметическое значение данных за временной период 00ч-:-01ч ...
'Понимаю что нужен еще один цикл для расчета остальных значений от 01ч-:-02ч до 23ч-:-24ч,но не знаю как правильно его реализовать с переносом на данных другой лист в виде таблицы: 00-:-01 данные
' 01-:-02 данные
' . . . . .
' 23-:-24 данные
   
       Sum =Sum + DateStr
       Aver=Aver + 1
       Sredarifm = Sum / Aver
 GoTo v_point
         Else Next I
           Loop

-----------
Вид Отчета
-----------------------------------------
   N дата время данные
-----------------------------------------
   1 03.07.2008 23:59:53 2440,072
   2 04.07.2008 0:00:03 2440,072
   3 04.07.2008 0:00:13 2440,072
   4 04.07.2008 0:00:24 2440,072
   5 04.07.2008 0:00:54 2440,072
   6 04.07.2008 0:01:04 2440,072
   7 04.07.2008 0:01:24 2440,072
   8 04.07.2008 0:01:44 2440,072
   9 04.07.2008 0:03:35 2440,072
  10 04.07.2008 0:05:05 2440,072
  11 04.07.2008 0:05:25 2440,072
   . . . .
   . . . .

 105 04.07.2008 0:58:44 2443,9
 106 04.07.2008 0:59:24 2443,9
 107 04.07.2008 1:01:54 2443,9
 108 04.07.2008 1:02:35 2443,9
 109 04.07.2008 1:03:05 2443,9
   . . . .
   . . . .
   . . . .
 2277 04.07.2008 23:54:11 2413,274
 2278 04.07.2008 23:54:21 2413,274
 2279 04.07.2008 23:56:12 2413,274
 2280 04.07.2008 23:57:02 2417,102
 2281 04.07.2008 23:57:12 2413,274
 2282 04.07.2008 23:57:22 2417,102
 2283 04.07.2008 23:58:32 2417,102
 2284 04.07.2008 23:58:52 2417,102
 2285 04.07.2008 23:59:12 2413,274
 2286 05.07.2008 0:00:03 2413,274
-------------------------------------------
Прошу подскажите, люди добрые, как правильно дописать код либо другую реализацию кода.
Наверняка это решается как-то проще, но нехватает пока знаний, а времени совсем мало..
Буду очень благодарен за помощь.Спасибо.
---
С уважением,
Вадим Соколов

Ответить

  Ответы Всего ответов: 1  

Номер ответа: 1
Автор ответа:
 vlad_lutek



ICQ: not 

Вопросов: 1
Ответов: 1
 Web-сайт: not
 Профиль | | #1
Добавлено: 11.07.08 03:24
Спасибо за "помощь" - сам разобрался и сделал..
Жаль времени много потерял..

ОТСТОЙНЫЙ ФОРУМ!!!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам