Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Поступление данных по таймеру
 
tolstak, огромное спасибо, все работает! Удачи!
Поступление данных по таймеру
 
tolstak, спасибо за ответ. В теме была ошибка - отображение не в А3,а в D4(затмения бывают)  Протестирую, отпишусь. Уточнение: значение А1 - одновременно и в D4, знач. А2 - одновременно и в D4, знач. А3 - одновременно и в D4 и т.д.
Поступление данных по таймеру
 

Доброго всем дня!   Уровень VBA  первый класс (с макросами не знаком), поэтому следующий вопрос:

На «Лист1» две кнопки Старт и Пауза (это я могу). Стартуя, в колонке ‘А’ через равные промежутки времени (1 сек. или 0,…), в ячейках от А1 до А100, задаются случайные числа от 0 до 50. Одновременно в ячейке   А3 отображается последнее из колонки значение. Помогите с кодом.

Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
Уважаемый, Казанский, 5 марта 2013 Вы привели пример задержки с помощью QueryPerformanceCounter. А в данной ситуации этот метод применим?
Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
Уважаемый, HUGO, все приведенные мной примеры я взял с данного форума 10-13 года  и скрестил, как мог, т.к. в Excel я никакой. Если не трудно подскажите что такое пересчет формул.
Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
Вопрос: Можно ли сделать так, что процедура начинает работать при поступлении данных, а не в режиме цикла?
Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
Доброго Всем дня. Возвращаюсь к ранее поднятой теме, т.к. вопрос остался не решенным. Обкатывал три варианта (ниже приведенных). Все работает при задержке 1,2,3 и т.д. сек. Но как только перехожу в миллисекунды, например 0.5сек.,  Excel вообще перестает реагировать на что либо, не закрыть, не свернуть, ни на какие клики не реагирует. Приходится завершать работу с помощью диспетчера задач. Excel в данном случае сервер, даже клиент не подключается.  Все варианты в модулях, а процесс запускается с Code Книга1:
Код
Private Sub Workbook_Open()
    TimerTwoSeconds
End Sub
____________________________________________________________­________________________
Вариант_1.                                                                                                                                                            
Код
Option Explicit
Public LastRowCount As Long
Public Sub TimerTwoSeconds()
    Dim pSheet As Worksheet, CurRowCount As Long
    Set pSheet = ThisWorkbook.Worksheets(1)
    CurRowCount = pSheet.UsedRange.Rows.Count
    pSheet.Range("C1").Value = CurRowCount - LastRowCount
    LastRowCount = CurRowCount
    Application.OnTime Now + 1.15740740740741E-05, "TimerTwoSeconds"
End Sub   
Вариант_2.
Код
Public Sub TimerTwoSeconds()
    Dim pSheet As Worksheet, CurRowCount As Long
    Set pSheet = ThisWorkbook.Worksheets(1)
    CurRowCount = pSheet.UsedRange.Rows.Count
    pSheet.Range("H1").Value = CurRowCount - LastRowCount
    LastRowCount = CurRowCount
    Application.OnTime Now + (TimeValue("00:00:01")/ 1000) * 500, "TimerTwoSeconds"
End Sub
Код
Вариант_3.
Код
Public LastRowCount As Long
Public Sub TimerSeconds()
    Dim pSheet As Worksheet, CurRowCount As Long
    Set pSheet = ThisWorkbook.Worksheets(1)
    CurRowCount = pSheet.UsedRange.Rows.Count
    pSheet.Range("C1").Value = CurRowCount - LastRowCount
    LastRowCount = CurRowCount
    
    Dim НазваниеМакроса As String
    Dim ЗадержкаВСекундах As Single
    Dim ЗадержкаВЧасах As String

     ЗадержкаВСекундах = 0.5
    НазваниеМакроса = "TimerSeconds"
    ЗадержкаВЧасах = Replace(Format(CDbl(TimeSerial(0, 0, 1)) * ЗадержкаВСекундах, "0.000000000"), ",", ".")
    macro = "ON.TIME(NOW()+" & ЗадержкаВЧасах & ", """ & НазваниеМакроса & """)" 
    ExecuteExcel4Macro macro
      Application.OnTime Now, "TimerSeconds"
End Sub
Ошибка соединения, Подключаясь к Win API появляется ошибка
 
Спасибо, Игорь. Все работает. Век живи, век учись.
Тема закрыта.
 
Ошибка соединения, Подключаясь к Win API появляется ошибка
 
Доброго Всем время суток. Пытаюсь, подключиться к Win API на разных простеньких примерах и постоянно появляется ошибка:
Цитата
constants, fixed-length strings, arrays, user-defined types and declare statements not allowed as public members of object modules
ОС – Windows 7 (32бит), Excel 2010 (32бит), файл “kernel32” в наличии. Вот код:
Код
Declare Sub Sleep Lib "kernel32" (ByVal milliseconds As Long)
Private Sub CommandButton1_Click()
Sub tt()
MsgBox 1
Sleep 2000
MsgBox 2
End Sub
Спасибо.
Изменено: Алексей_S. - 05.02.2016 11:22:03
Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
А настройки Excel могут влиять в данном случае?
Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
Изменил  исходный код под миллисекунды – интервал сделал 500 миллисекунд. Происходит следующее: после открытия книги ничего, не подключая,  через равные промежутки времени (1сек) происходит как бы снова загрузка в течение секунд 5-8. Цикл этот не прекращается. И иногда на панели быстрого доступа появляется надпись – «не отвечает».
В чем проблема?
Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
Спасибо, Karataev, буду обкатывать.
С Уважением, Алексей.
Timer в миллисекундах, Объединить процедуры счетчика с процедурой таймера
 
Всем Доброго дня.  «Творю» на VB.Net, поэтому VBA душой понимаю, а реально решить задачку не всегда получается. Подскажите решение следующей проблемы: Получаю данные в режиме On-Line в первый столбец. Необходимо знать кол-во поступивших данных за единицу времени. Вот код
Код
Option Explicit
Public LastRowCount As Long
Public Sub TimerTwoSeconds()
    Dim pSheet As Worksheet, CurRowCount As Long
    Set pSheet = ThisWorkbook.Worksheets(1)
    CurRowCount = pSheet.UsedRange.Rows.Count
    pSheet.Range("H1").Value = CurRowCount - LastRowCount
    LastRowCount = CurRowCount
    Application.OnTime Now + 1.15740740740741E-05, "TimerTwoSeconds"
End Sub
Данный код с поставленной задачей справляется(код помог написать участник форума) – это если интервалы времени 1сек. 2, 3 и т.д. А требуется в миллисекундах. Нашел на форуме и в MSDN аналогичную тему, но состыковать с моим кодом не могу.
Если возможно подскажите. Заранее Спасибо.
Получение данных через DDe, Задержка по времени при получении данных
 
Здравствуйте!

Подскажите, как побороть следующую проблему.

Из  таблицы приложения идет экспорт данных по DDE в Ecxel. Таблица
обновляется более 10 раз в секунду. Визуально видно, что данные в Excel
обновляются с явной задержкой. Как решить эту проблему?
Страницы: 1
Наверх