2015-05-01 1 views
0

Пожалуйста, со мной годится, поскольку я новичок в макросах и VBA.Пользовательская форма появляется, если ячейка содержит «2SO» или «2SQ»

Я пытаюсь получить форму пользователя, чтобы отображаться, если ячейка в моей табличке с рассылкой содержит либо «2SQ», либо «2SO» - для обеих сторон требуется одна и та же форма пользователя. В пользовательской форме есть одно текстовое поле, в котором пользователь может ввести номер, например «0001», или слово «Разное». Когда пользователь вводит данные, появляется кнопка «ОК» (CommandButton1) для нажатия. Затем я хочу, чтобы данные, которые они помещали в форму «Пользователь», переходили в другую ячейку листа распространения.

Я уже создал форму пользователя (UserForm1), однако не могу заставить ее появляться, когда требуется, и, очевидно, я не могу заставить ее передавать данные, введенные в другую ячейку.

Я хотел бы дать вам примеры того, что я уже пробовал, однако они просто скопировать и пасты из веб-сайтов, чтобы попробовать и сделать это без удачи

Пожалуйста, задавать мне любые вопросы, которые вы требуете. Приветствия заранее.

ответ

0

Попробуйте VBA likme это в коде рабочего листа:

Private Sub Worksheet_Change(ByVal Target As Range) 
    Select Case Target.cells(1, 1).Value 
     Case "2SQ", "2SO" 
      UserForm1.Show Modal:=True 
      Sheet.CellWhereYouWantItToGo.Value = UserForm1.TextBox1.Text 
    End Select 
End Sub 

модальная часть означает, что код будет ждать, пока форма не будет закрыт (то есть в вашем случае ComandButton1 клика вы должны Me.Hide)