Проверьте, отображается ли пользовательская форма - PullRequest
0 голосов
/ 06 мая 2020

Посмотрим ... Я работаю с макросами в Excel, поэтому у меня есть макрос под названием «Сохранить», который активируется кнопкой, и этот макрос работает со специальной формой c: «frm_income», я создаю новая форма: "frm_Expenses", и я хочу использовать тот же макрос, поэтому мой вопрос заключается в том, как я кодирую условное выражение, если frm_Expenses отображается или активируется, и использую макрос.

Вот часть макроса

Sub Save()
Dim i As Integer
Dim Final As Integer
frm_Expenses.btn_Save.Enabled = True
frm_Expenses.btn_Erase.Enabled = True
For i = 4 To 1000
  If Sheet5.Cells(i, 2) = "" Then
  Final = i
  Exit For
  End If
  Next
 sheet5.Cells(Final, 2) = frm_Expenses.txt_Code

.... А может я думал примерно так

Sub Save()
Dim i As Integer
Dim Final As Integer

if frm_Sales.(something..activate...shown..) then

frm_sale.btn_Save.Enabled = True
frm_sale.btn_Erase.Enabled = True
For i = 4 To 1000
  If Sheet5.Cells(i, 2) = "" Then
  Final = i
  Exit For
  End If
  Next
 sheet5.Cells(Final, 2) = frm_Sales.txt_Code
else
frm_Expenses.btn_Save.Enabled = True
frm_Expenses.btn_Erase.Enabled = True

1 Ответ

0 голосов
/ 06 мая 2020

Вы можете это сделать:

Sub Save(frm As Object)

    Dim i As Integer
    Dim Final As Integer
    frm.btn_Save.Enabled = True
    frm.btn_Erase.Enabled = True
      For i = 4 To 1000
          If Sheet5.Cells(i, 2) = "" Then
              Final = i
              Exit For
          End If
      Next
      sheet5.Cells(Final, 2) = frm.txt_Code
      ....

Затем позвоните из своей формы:

Save Me
...