2126Excel如何找到所有符合相同排序的欄位,並傳回下一欄位的值?-VBA版

Excel如何找到所有符合相同排序的欄位,並傳回下一欄位的值?-VBA版

2126

Excel如何找到所有符合相同排序的欄位,並傳回下一欄位的值?-VBA版

實用性

●○○

難易度

●○○○

範本檔

2126.XLSX

我遇到一個難題需要幫忙解答,如附圖,我需要在B欄中,找出所有同時符合A2、A3、A4的數值和排序的儲存格範圍,然後標示符合條件的範圍,並傳回下一欄的值在C欄。

附圖操作說明:
在B欄中找出數值符合 4、5、4,並且排序相同的第一個儲存格範圍為B4到B6,再找到下一欄 B7的值為5,將5填入C2;繼續找到符合條件的第二個儲存格範圍為 B6到 B8,再找到下一欄B9的值為10,將 10填入 C3。以此類推。

感謝老師的幫忙,祝平安喜樂。

VBA程式寫法-由NEISH大神所寫

Sub Forum()

    Dim i As Integer

    Dim b_end As Integer

    Dim c_start As Integer

    ---B欄倒數第三個

    b_end = Range("B1").End(xlDown).Row - 2

    For i = 2 To b_end

        If Range("B" & i) = Range("A2") And _

            Range("B" & i + 1) = Range("A3") And _

            Range("B" & i + 2) = Range("A4") Then

            ---找C欄空白的地方(要放值的地方)

            c_start = Columns("C").Find("").Row

            Range("C" & c_start) = Range("B" & i + 3)

        End If

    Next

End Sub