VBA ждать ответа от UserForm и импортировать в таблицу BeforeSave?
Как заставить VBA ждать ответа от пользовательской формы "SavePrompt", затем в зависимости от выбора ("Ok" или "Отмена") VBA продолжается?
Мне нужно, чтобы пользователь заполнил текстовое поле перед сохранением книги.
Эта информация будет затем импортирована в столбец B таблицы Table1. Столбец А - это текущая дата и время.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim ws As Worksheet
Set ws = Sheets("EDITS")
Dim tbl As ListObject
Set tbl = ws.ListObjects("Table1")
Dim newrow As ListRow
Set newrow = tbl.ListRows.Add
SavePrompt.Show
With newrow
.Range(1) = Now
.Range(2) = TextBox1 'this is from the SavePrompt Userform
End With
End Sub
Заранее спасибо!
1 ответ
Решение
TextBox1
является собственностью SavePrompt
экземпляр, а не переменная.
Вместо этого:
With newrow
.Range(1) = Now
.Range(2) = TextBox1 'this is from the SavePrompt Userform
End With
... вы должны написать это:
With newrow
.Range(1) = Now
.Range(2) = SavePrompt.TextBox1.Text
End With