VBA ждать ответа от UserForm и импортировать в таблицу BeforeSave? - PullRequest
0 голосов
/ 24 мая 2018

Как мне VBA ждать ответа от пользовательской формы "SavePrompt", а затем, в зависимости от выбора (Ok или Cancel), продолжить VBA?

Мне нужно, чтобы пользователь заполнил текстовое поле до того, какрабочая книга сохраняет.

Эта информация затем будет импортирована в столбец B таблицы Table1.Столбец A - это текущая дата и время.

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 Ответ

0 голосов
/ 24 мая 2018

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
...