0
Я пытаюсь закончить проект в классе VBA и застрял. Я создал программу для большей части поиска слов, но я не могу заставить функцию timerInterval работать. Задача и код ниже:Авто-очистка текста в VBA
- Создайте игру поиска слов, которая позволяет пользователю просматривать строку символов в течение заданного промежутка времени (например, от 5 до 10 секунд). Постройте таймер, чтобы выполнить это. По истечении времени скройте строку символов и предложите пользователю ввести одно или несколько слов, которые он увидел в строке. Например, строка символов keoixakaccessqcinmsboxeamlz содержит слова access и box. Используйте функцию InStr, чтобы определить, содержится ли угадание пользователя в строке поиска слова.
Option Compare Database
Option Explicit
Private Sub cmdShow_Click()
txtOutput.Value = "hello world"
End Sub
Private Sub Form_Load()
txtOutput.Caption = Text
If txtOutput.DefaultValue = Text Then
Me.TimerInterval = 5000
If txtOutput = 0 Then
txtOutput = False
End Sub
Private Sub cmdCheck_click()
Dim guess As Integer
guess = InStr(txtOutput.Value, txtInput.Value)
If guess = 0 Then
txtResult.Value = "You're terrible at this game"
Else
txtResult.Value = "Good find!"
End If
End Sub
Где 'Sub Form_Timer)' раздел кода (? Вот где произойдет очистка текста. [проверьте это] (https://msdn.microsoft.com/en-us/library/office/ff836371.aspx) –
Что сказал Джимми Смит. Я прокомментирую ваш код, хотя ... Итак, txtoutput может быть строкой, int и логическим? Это просто просит неприятностей. Вам необходимо указать объявление переменной. (Окно VBA, Инструменты> Параметры). Без объявления переменных, ошибка будет работать с двумя разными переменными, такими как var1 и va1, и будет затруднять отслеживание ошибок. Вы должны использовать End Ifs даже для одиночных линий, разбитых на _ Я тоже не сделал этого, пока не получится подчеркнуть и не испортить мой код (и с трудом находить ошибку в тысячах строк). End If делает его более читаемым. – CyberClaw
@CyberClaw - ваши предложения не применимы. У него уже есть опция Explicit наверху кода. txtoutput - это элемент управления, который принимает любую форму текста. Если/Endif - хорошее предложение, но не имеет ничего общего с его вопросом Таймера – dbmitch