ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] Ū¨ú¤ÎÂkÃþ¸ê®Æ

¨Ï¥Î°}¦C³B²z//AÄ椣¦X¨Ö¤]¥i¥H..¥u»{«DªÅ
Sub Test_A1()
Dim Arr, Brr, i&, j%, R&, Rx&, C%, X%, T$
Arr = Range([f1], [a65536].End(3).MergeArea)
ReDim Brr(1 To UBound(Arr) * 5, 1 To 99)
For i = 3 To UBound(Arr)
    T = Split(Arr(i, 1) & " ", " ")(0)
    If T Like "BF¤uµ{[#]###" Then C = C + 1: R = 1: Brr(R, C) = T
    For j = 2 To UBound(Arr, 2)
        T = Split(Arr(i, j) & " ", " ")(1)
        If T Like "SR####(*" Then R = R + 1: Brr(R, C) = Split(T, "(")(0)
    Next j
    If R > Rx Then Rx = R
Next i
With Range("H2")
     .CurrentRegion.Clear
     .Resize(Rx, C) = Brr
End With
End Sub

TOP

¦^´_ 3# 198188

GPT4
Sub test()
    ' ©w¸qÅܶq¨Ãªì©l¤ÆÅܶqr¬°²Ä¤@¦C³Ì«á¤@­Ó«DªÅ¦æªº¦æ¸¹
    r = Cells(Rows.Count, 1).End(xlUp).Row
    ' ªì©l¤Æ¿é¥X°_©lªº¦C¸¹c¬°²Ä7¦C¡]§YG¦C¡^
    c = 7

    ' ²M°£±qH2¨ìJ1000ªº¤º®e¡A¬°·sªº¿é¥X°µ·Ç³Æ
    Range("H2:J1000").ClearContents

    ' ±q²Ä¤T¦æ¶}©l°j°é¡Aª½¨ì³Ì«á¤@­Ó«DªÅ¦æ
    For i = 3 To r
        ' Àˬd·í«e¦æ²Ä¤@¦Cªº³æ¤¸®æ¬O§_¤£¬°ªÅ
        If Cells(i, 1).Value <> "" Then
            ' ³q¹L¤À³Î³æ¤¸®æ­È¨Ã¨ú²Ä¤@­Ó¤¸¯À¨Ó´£¨ú¥ô°È¥N½X
            tx = Split(Cells(i, 1).Value, " ")(0)
            ' ½T©w·í«e³æ¤¸®æ¦X¨Ö°Ï°ìªº¼Æ¶q
            mr = Cells(i, 1).MergeArea.Count
            ' ¦pªG¦s¦b¦X¨Öªº³æ¤¸®æ
            If mr > 0 Then
                ' ¹M¾ú¦X¨Ö°Ï°ì¤¤ªº¨C­Ó³æ¤¸®æ¡A±Æ°£²Ä¤@­Ó³æ¤¸®æ¡]¦]¦¹¨Ï¥Îmr - 1¡^
                For Each Z In Cells(i, 2).Resize(mr - 1, 5)
                    ' ¦pªG³æ¤¸®æ¥]§t"SR"¦r¼Ë
                    If UCase(Z.Value) Like "*SR*" Then
                        ' ¤À³Î­È¥HÀò¨úSR½s¸¹¡A¥h°£¬A¸¹
                        sp = Split(Z.Value, "(")(0)
                        ' ±qSR½s¸¹¤¤²¾°£"¤W¬["¡B"¤U¬["©MªÅ®æ
                        sp = Replace(sp, "¤W¬[", "")
                        sp = Replace(sp, "¤U¬[", "")
                        sp = Replace(sp, " ", "")
                        ' ¥Î"¡¶"§@¬°¤À¹j²Å¡A±NSR½s¸¹ªþ¥[¨ì¥ô°È¥N½X«á­±
                        tx = tx & "¡¶" & sp
                    End If
                Next
                ' ²¾°Ê¨ì¤U¤@¦C¿é¥X¦ì¸m
                c = c + 1
                ' ³q¹L¤À¹j²Å"¡¶"¤À³Î½sĶ«áªº¥ô°È¥N½X©MSR½s¸¹
                sp0 = Split(tx, "¡¶")
                ' ±NSR½s¸¹¼Æ²ÕÂà¸m¨Ã±q·í«e¦C¶}©l¼g¤J¤u§@ªí
                Cells(2, c).Resize(UBound(sp0) + 1, 1) = Application.Transpose(sp0)
            End If
        End If
    Next
End Sub
³o¬qVBA§»ªº¥Øªº¬O±N¥ô°È¦Cªí¤¤ªº¡§SR¡¨½s¸¹®Ú¾Ú²Ä¤@¦C«ü©wªº¥ô°È¾ã²z¨ì¤£¦Pªº¦C¤¤¡C¥¦·|¥ý²M°£«ü©w½d³òªº¤º®e¡A±µµÛ³B²z¸ê®Æ¨Ã¤À³Î¦r¦ê¡A³Ì«á±N¾ã²z¦nªº¿é¥XÂà¸m¦Ü¤u§@ªí¤¤¡C³o¨Çµù¸ÑÀ³¸Ó¯àÀ°§U§A²z¸Ñ³o­Ó§»ªºÅÞ¿è©M¬yµ{¡C

TOP

¦^´_ 2# singo1232001


        «D±`·PÁ¡I¯à¤£¯à¦³ª`ÄÀ¤@¤U¡A³o¼Ë§Ú¥i¥H§ó¦n²z¸Ñ¨C¥y¥Î·N¡A¦pªG®æ¦¡©ÎªÌªí®æ¦³ÅÜ°Ê¡A¤]¥i¥H¦Û¤v°µ¥X­×§ï¡C:handshake

TOP

¦^´_ 1# 198188


    Sub test()
r = Cells(Rows.Count, 1).End(3).Row
c = 7
Range("H2:J1000").ClearContents
For i = 3 To r
If Cells(i, 1).Value <> "" Then
tx = Split(Cells(i, 1).Value, " ")(0)
mr = Cells(i, 1).MergeArea.Count
If mr > 0 Then
For Each Z In Cells(i, 2).Resize(mr - 1, 5)
If UCase(Z.Value) Like "*SR*" Then
sp = Split(Z.Value, "(")(0)
sp = Replace(sp, "¤W¬[", "")
sp = Replace(sp, "¤U¬[", "")
sp = Replace(sp, " ", "")
tx = tx & "¡¶" & sp
End If

Next
c = c + 1
sp0 = Split(tx, "¡¶")
Cells(2, c).Resize(UBound(sp0) + 1, 1) = Application.Transpose(sp0)
End If
End If
Next
End Sub

TOP

        ÀR«ä¦Û¦b : ¥Ç¿ù¥XÄb®¬¤ß¡A¤~¯à²M²bµL·Ð´o¡C
ªð¦^¦Cªí ¤W¤@¥DÃD