Найдена ячейка с определенным значением, как обратиться к этой ячейке для поиска во всем столбце другого значения - PullRequest
0 голосов
/ 31 мая 2019

Я пытаюсь написать программу в Excel, в которой пользователь вводит значение, он ищет в других таблицах это значение, находит столбцы с этим значением, ищет в строках этого столбца даты, более поздние, чем сегодняшняя дата, и возвращает содержимое столбца 1 строк со значениями позже текущей даты.

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

Ниже приведено то, что я имею до сих пор, и я думаю, что я должен ввести после "If Worksheets (i) .Cells (2, j) .Value = Method Then" другое утверждение If: "If Worksheets (i) .Cells ( ?,?). Значение> = Today () Затем ", но я не уверен, как ссылаться на ячейки, которые я хотел бы найти, поскольку они зависят от того, где они находятся в предыдущем выражении.

Private Sub CommandButton1_Click()

totalsheets = Worksheets.Count
Method = Worksheets("Search a Method").Cells(3, 6).Value

For i = 1 To totalsheets
    If Worksheets(i).Name <> "Search a Method" Then

    lastcolumn = Worksheets(i).Cells(2, Columns.Count).End(xlToLeft).Column

    For j = 2 To lastcolumn
        If Worksheets(i).Cells(2, j).Value = Method Then

        Worksheets("Search a Method").Activate

        lastrow = Worksheets("Search a Method").Cells(Rows.Count, 1).End(xlUp).Row
        Worksheets("Search a Method").Cells(lastrow + 1, 1).Value = Worksheets(i).Name

        End If
    Next
    End If
Next

End Sub

1 Ответ

1 голос
/ 31 мая 2019

Буду опираться на мое предложение по использованию .Find(), приведенный ниже пример должен дать некоторые рекомендации:

Dim findrng As Range, col As Long, method As String
method = "dog"
With Sheets(1)
    Set findrng = .Rows(2).Find(what:=method, LookIn:=xlValues, LookAt:=xlPart, searchorder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False)
End With
col = findrng.Column
Debug.Print col

Я поместил «кошку» в ячейки (2,2) и «собаку» в ячейки (2,3), поэтому в приведенном выше коде окно «3» указывает на столбец method. .


Изображение выше:

enter image description here

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