| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Пошаговый режим в VBA

Пошаговый режим в VBA

Ответ
Поиск в этой теме
Непрочитано 17.08.2005, 17:33 #1
Пошаговый режим в VBA
Хотабыч
 
Регистрация: 02.06.2005
Сообщений: 15

как ? каким методом ? или еще как
сделать так что-бы
после каких-либо действий
программа останавливалась и ждала пока
будет нажата кнопка

З.Ы. сорри за дебильное формирование вопроса
Просмотров: 4151
 
Непрочитано 17.08.2005, 17:45
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Ну можно как-то так, наверно:
Код:
[Выделить все]
MsgBox "Ожидаю ответа пользователя", vbOKOnly + vbInformation + vbApplicationModal, "Пауза"
Или так:
Код:
[Выделить все]
Dim vbAnswer As Integer
  vbAnswer = MsgBox("Пользователь, нажми хоть что-то, а то я работать не буду!", _
              vbYesNoCancel + vbCritical + vbSystemModal, "Сообщение не только от када")
  Select Case vbAnswer
    Case vbYes
      MsgBox "Ура! Нажата ОК", vbOKOnly + vbInformation + vbApplicationModal
    Case vbNo
      MsgBox "Ты точно уверен?", vbOKOnly + vbQuestion + vbApplicationModal
    Case vbCancel
      MsgBox "Ну и ладно!", vbOKOnly + vbCritical + vbApplicationModal
  End Select
---
Добавлено:
Или вопрос именно о пошаговом выполнении функции? Так это... В vbaide установить точку прерывания (breakpoint) и потом по шагам - F8, по-моему.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 18.08.2005, 13:49
#3
Хотабыч


 
Регистрация: 02.06.2005
Сообщений: 15


какой вопрос - такой ответ
есть файл следующего содержания
3
4
+100-20+
+29+30+300-1000+
45

надо кликая кнопку на форме читать построчно файл
и выполнять какие-либо действия в
зависимости от того что прочитал
вот
Хотабыч вне форума  
 
Непрочитано 18.08.2005, 14:00
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Так а не проще тогда будет создать какую-то переменную с областью действия "форма" (при unload me такие переменные, кажется, обнуляются) - обзовем ее lStringNumber, и добавить новую кнопку [Читать далее]. При загрузке формы lStringNumber = 1. На кноку повесить код чтения строки с номером lStringNumber, анализ строки, если строка "нестандартная" (ну комментарий, например), то lStringNumber = lStringNumber + 1 и читать следующую. После успешного чтения lStringNumber = lStringNumber + 1.
---
Все на уровне идеи, без проверок.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 18.08.2005, 17:53
#5
Хотабыч


 
Регистрация: 02.06.2005
Сообщений: 15


Идея мне ясна и кажется очень заманчивой
вот только как прочитать строку из файла lStringNumber ?
или в принципе можно прочитать весь
файл в массив и потом действовать
просто я делал так:
открывал файл на чтение OpenTextFile
и потом в цикле читал его построчно
Do While AtEndOfStream <> 0
file.readline
Loop
как ты думаешь в этой ситуации можно чего-нить
придумать?
Хотабыч вне форума  
 
Непрочитано 19.08.2005, 09:09
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


ИМХО: что в лоб, что по лбу. Если читать в массив, то при больших файлах памяти съестся мама не горюй. Если читать построчно до момента достижения lStringNumber, то времени будет уходить чем дальше тем больше. Вопрос, с чем можно смириться.
Если файлы не очень длинные (примерно до 500 строк), то, может, сделать примерно так (c VBA уже давненько не работаю, так что ошибки кода практически гарантированны):
Код:
[Выделить все]
'открывать файл
For lCounter = 1 to lStringNumber
  sCurString = file.readline
Next 'lCounter
по идее после выхода из цикла в sCurString будет валяться значение строки с номером lStringNumber.
Еще раз говорю - с VBA не работаю, поэтому насчет нумерации строк в файле в режиме чтения, в частности, не уверен.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 22.08.2005, 12:04
#7
Хотабыч


 
Регистрация: 02.06.2005
Сообщений: 15


чувак все нормально
сделал
через массив
файлы не большие так что всё нормально
получается
tnx
Хотабыч вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Пошаговый режим в VBA

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск