Как я могу установить поля ввода диапазона пользователя в этих двух строках? - PullRequest
0 голосов
/ 25 марта 2019

У меня есть код, который сопоставляет 3 или более рабочих навыков с огромным набором данных и выделяет рабочие места в других областях компании, где эти навыки могут передаваться.Код работает феноменально, но я хотел бы включить пользовательские поля ввода для двух строк кода.

  1. Set rSkills = Range("A2:A7") Я бы хотел, чтобы пользователь выбрал диапазон в столбце A от строки 2 до последнего введенного навыка задания.

  2. If i >= 3 Then Я также хочу, чтобы в поле ввода отображалось, и пользователь должен указать, сколько рабочих навыков они хотят соответствовать каждой работе.Если им нужен только 1, я бы хотел, чтобы в поле ввода можно было вводить 1 или больше, если это необходимо.

Как этого достичь?Вот весь мой код:

Sub FindSkills()

Dim c As Range
Dim r As Range
Dim row As Integer
Dim i As Integer
Dim rSkills As Range
Dim cSkills As Range
Dim JobCodeMatch As Integer
Dim JobTitleMatch As Integer
Dim CLevelMatch As Integer
Dim JobCode As String
Dim JobTitle As String
Dim CareerLevel As String

    row = 2
    JobCodeMatch = 2
    JobTitleMatch = 2
    CLevelMatch = 2

    'Application.ScreenUpdating = False

    Set rSkills = Range("A2:A7")
    Do While row < 2400 
      i = 0 'reset
      JobCode = Cells(row, 6).Value
      JobTitle = Cells(row, 7).Value
      CareerLevel = Cells(row, 14).Value

      Set r = Range(Cells(row, 6), Cells(row, 336))
      For Each c In r
        For Each cSkills In rSkills
          If c.Value = cSkills.Value Then i = i + 1
        Next cSkills
      Next c
      If i >= 2 Then
        Cells(JobCodeMatch, 3) = JobCode 'Column C
        Cells(JobTitleMatch, 4) = JobTitle 'Column D
        Cells(CLevelMatch, 5) = CareerLevel
        JobCodeMatch = JobCodeMatch + 1
        JobTitleMatch = JobTitleMatch + 1
        CLevelMatch = CLevelMatch + 1
      End If
      row = row + 1
    Loop

    'Application.ScreenUpdating = True

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...