Как выбрать диапазон ячеек в Excel на основе условия? - PullRequest
0 голосов
/ 17 марта 2019

Мне нужно выбрать диапазон спроса на листе 1, соответствующий номеру детали, выбранному на листе 2 моей рабочей книги.До сих пор я написал макрос для автоматического выбора номера детали на листе 1, когда тот же номер детали выбран на листе № 2. Но у меня возникают проблемы с выбором диапазона, соответствующего номеру детали, который я хочу основатьмои расчеты по.Может кто-нибудь подскажите, пожалуйста, как выбрать диапазон?

Public Sub calculation()
    Dim x As Variant
    Dim rng As Range
    Dim i As Variant
    Dim j As Integer
    Dim findcell As Range
    Dim a_1 As Range
    Dim b_1 As Range
    Dim rnge As Range

    Worksheets("Sheet2").Activate
    x = Worksheets("Sheet2").Range("C3").Value
    Worksheets("Sheet1").Activate
    Set rng = Worksheets("Sheet1").Range("A2:A26")        

    For Each i In rng
        If x = i Then
            Set findcell = i
        End If
    Next i

    j = findcell.Select

    Set a_1 = ActiveCell.Offset(0, 1)
    Set b_1 = ActiveCell.Offset(0, 66)

    Worksheets("Sheet2").Range("C9").Value "=AVERAGE(Sheet1!"a_1.Address":"b_1.Address")"
End Sub

enter image description here

1 Ответ

0 голосов
/ 17 марта 2019

Должно быть в состоянии сделать что-то вроде этого:

Public Sub calculation()

    Dim f As Range

    Set f = Worksheets("Sheet1").Range("A2:A26").Find( _
               what:=Worksheets("Sheet2").Range("C3").Value, _
               lookat:=xlWhole)

    With Worksheets("Sheet2").Range("C9")
        If Not f Is Nothing Then
            .Formula = "=AVERAGE(Sheet1!" & f.Offset(0, 1).Resize(1, 66).Address & ")"
        Else
            .Value = "???"
        End If
    End With

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