VBA, PowerPoint Freezing - PullRequest
       4

VBA, PowerPoint Freezing

0 голосов
/ 29 января 2020

Я новичок в VBA и мне нужна ваша помощь. Я кодирую в проекте VBA внутри экземпляра PowerPoint. Я запрограммировал userRibbon, чтобы сделать что-то, и это работает хорошо. Теперь я добавил один функционал. Его задача - получить имя пользователя (логин учетной записи P C) и записать его на слайд в PowerPoint. Существует разница между тем, кто является докладчиком, а кто - создателем презентации PowerPoint. Поэтому нормальное поле ввода не является оптимальным для этого решения. Я добавил новую форму в свой проект и разработал ее. Два текстовых поля и две кнопки, OK и Отмена.

Теперь, по VBA.Interaction.Environ $ ("username") Я получаю имя пользователя. По этому имени я устанавливаю оба текстовых поля, затем хочу показать мою форму, ожидающую подтверждения. Это точка, где Powerpoint абсолютно зависает, и это моя проблема. Нет ошибок, ничего. Необходимо вызвать диспетчер задач и отключить презентацию Powerpoint. Если я устанавливаю точку останова в начале процедуры и начинаю шагать по коду, процедура завершается sh хорошо, без замораживания. Я не знаю, почему! Пожалуйста, вы мне поможете?

private speaker as String
private creator as String

Sub GetUserName()
  Dim strDisplayName As String
  Dim objUser As Variant

  objUser = VBA.Interaction.Environ$("username")    ' return username

  'open DB 
   Call OpenDatabase

   'load data from DB, I want name, not usernam
   rst.Open"SELECT name FROM tbl_User WHERE login = '" & objUser & "' ;", ..........

   if rst.RecordCount > 0 Then
      strDisplayName = rst(0)
   else
      .....
   end if

   'close DB
   Call Closedatabse

   myInputBox.TextBox1.Text = strDisplayName     'fill first textBox
   myInputBox.TextBox2.Text = strDisplayName     'fill second textBox
   myInputBox.Show   <= point of freezing    
                                                                                                         
   Call WriteUserNames(speaker, creator)              ' write name into the slide

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...