Pu sh Данные из пользовательской формы для указания ячейки c на указанном рабочем листе с помощью комбинированных списков для выбора целевой ячейки - PullRequest
1 голос
/ 28 января 2020

Длинный заголовок, но, надеюсь, это легко исправить, так что спасибо, что заглянули.

У меня есть пользовательская форма со списками (для разных сотрудников, месяцев и дней) и текстовым полем (Используются выходные дни) Форма содержит 10 Комбо-ящики для месяца и дня, чтобы учесть несколько записей (это все относится к вопросу, который я обещаю). введите описание изображения здесь Я хотел бы отправить данные, введенные в текстовые поля, в ячейку, продиктованную выбором из 3 комбинированных списков. Целевые листы имеют одинаковую разметку (по 1 на сотрудника). Заголовки столбцов: месяцы, а строки - дни (пронумерованы). это работает, я знаю, что там есть ошибки, но если есть несколько указателей, чтобы заставить его работать, это было бы фантастически c, я перечислил комментарий, чтобы лучше всего описать мои намерения, также я не уверен, что LastRow не является лучший вариант, но не знал альтернативы (я думал Range?):

Private Sub CommandButton3_Click()

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.DisplayStatusBar = False

    Dim LastRow As Long
    Dim ComboDay As String
    Dim ComboMonth As String
    Dim I As Integer

'Open up sheet for data entry

    'Dim WBK As Workbook

        'Set WBK = Workbooks.Open(".xlsm")

    'Windows(".xlsm").Activate


    Dim ws As Worksheet
      If ws.Name = UserForm1.ComboBox1.Text Then
     End If

            LastRow = ws.Range("C" & Rows.Count).End(xlUp).Row       'LastRow for the loop


'Identifying date and time
ComboDay = UserForm1.ComboBox2.Text            'day number from Combobox
ComboMonth = UserForm1.ComboBox3.Text           'Month selected in the ComboBox

For I = 1 To LastRow
    If (ws.Range("C" & I).Text = ComboDay) And (ws.Range("D" & I).Text = ComboMonth) Then  'I know D range in ComboMonth is wrong - this is part of the old code which looked in two columns for date and time- how can this be changed to look across the columns (which are in row 16 on the sheet currently)
        ws.Range("ComboDay", "ComboMonth" & I).Value = TextBox1.Text 'this is my basic attempt to illustrate how i want the code to look for the cell which is defined by the comboboxes
        ws.Range("G" & I).Value = TextBox2.Text ' these below are all the old code - combo boxes on the form are all odd numbers from 3-21 for month and day are even from 2-20
        ws.Range("I" & I).Value = TextBox3.Text
        ws.Range("K" & I).Value = TextBox4.Text
        ws.Range("M" & I).Value = TextBox5.Text
        ws.Range("O" & I).Value = TextBox6.Text
        ws.Range("Q" & I).Value = TextBox7.Text
        ws.Range("S" & I).Value = TextBox8.Text
        ws.Range("U" & I).Value = TextBox9.Text
        ws.Range("Z" & I).Value = TextBox10.Text
    End If
Next I

Application.DisplayStatusBar = True
Application.DisplayAlerts = True
Application.ScreenUpdating = True


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