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
Другие вопросы по тегам