Results 1 to 25 of 25

Split Text Across Multiple Columns and Add Additional Text

Threaded View

Jim Clayton Split Text Across Multiple... 08-16-2018, 08:09 PM
kersplash Re: Split Text Across... 08-16-2018, 08:14 PM
chandrau03 Re: Split Text Across... 08-18-2018, 04:50 PM
Jim Clayton Re: Split Text Across... 08-16-2018, 08:20 PM
ikboy Re: Split Text Across... 08-16-2018, 10:11 PM
jolivanes Re: Split Text Across... 08-16-2018, 10:55 PM
Jim Clayton Re: Split Text Across... 08-17-2018, 11:37 AM
Jim Clayton Re: Split Text Across... 08-17-2018, 08:05 PM
jindon Re: Split Text Across... 08-17-2018, 09:03 PM
jolivanes Re: Split Text Across... 08-18-2018, 01:41 AM
Jim Clayton Re: Split Text Across... 08-18-2018, 12:57 PM
jolivanes Re: Split Text Across... 08-18-2018, 02:35 PM
Jim Clayton Re: Split Text Across... 08-18-2018, 04:16 PM
Jim Clayton Re: Split Text Across... 08-18-2018, 04:50 PM
6StringJazzer Re: Split Text Across... 08-18-2018, 05:51 PM
jindon Re: Split Text Across... 08-18-2018, 08:21 PM
Jim Clayton Re: Split Text Across... 08-18-2018, 10:27 PM
jindon Re: Split Text Across... 08-18-2018, 11:11 PM
Jim Clayton Re: Split Text Across... 08-19-2018, 12:12 AM
jindon Re: Split Text Across... 08-19-2018, 12:19 AM
Jim Clayton Re: Split Text Across... 08-19-2018, 03:00 AM
jindon Re: Split Text Across... 08-19-2018, 03:45 AM
Jim Clayton Re: Split Text Across... 08-19-2018, 09:28 AM
jindon Re: Split Text Across... 08-20-2018, 01:12 AM
Jim Clayton Re: Split Text Across... 08-20-2018, 09:46 AM
  1. #22
    Forum Guru
    Join Date
    08-15-2004
    Location
    Tokyo, Japan
    MS-Off Ver
    2013 O.365
    Posts
    22,836

    Re: Split Text Across Multiple Columns and Add Additional Text

    I just don't know where "Item Number" come from.
    Sub test()
        Dim a, b, i As Long, m As Object, sm As Object
        With Sheets("sheet1")
            a = .Range("d2", .Range("d" & Rows.Count).End(xlUp)).Value
            ReDim b(1 To UBound(a, 1), 1 To 11)
        End With
        With CreateObject("VBScript.RegExp")
            For i = 1 To UBound(a, 1)
                .Pattern = "\bUNS\-(S)(\d+)\d{2}(/S(\d+)\d{2})?\b"
                If .test(a(i, 1)) Then
                    Set sm = .Execute(a(i, 1))(0).submatches
                    If sm(2) = "" Then
                        b(i, 1) = sm(1) & String(2, sm(0))
                    Else
                        b(i, 1) = "F" & sm(1) & "/F" & sm(3) & "L"
                    End If
                    a(i, 1) = .Replace(a(i, 1), "")
                End If
                .Pattern = "^(\d+)(?=,)|(\d*) *(\d+/\d+(?="")?)"
                If .test(a(i, 1)) Then
                    Set sm = .Execute(a(i, 1))(0).submatches
                    If sm(0) <> "" Then
                        b(i, 3) = sm(0) & """"
                    Else
                        b(i, 3) = sm(1) & IIf(sm(1) <> "", "-", "") & sm(2) & """"
                    End If
                    a(i, 1) = .Replace(a(i, 1), "")
                End If
                .Pattern = "\b(R(F|J))(WN)?( BLD)?\b"
                If .test(a(i, 1)) Then
                    If .Execute(a(i, 1))(0).submatches(3) <> "" Then
                        b(i, 4) = "RT J Blind"
                    Else
                        b(i, 4) = "Raised Face Weld Neck"
                    End If
                    a(i, 1) = .Replace(a(i, 1), "")
                End If
                .Pattern = "\b\d+0{2}\b"
                If .test(a(i, 1)) Then b(i, 5) = .Execute(a(i, 1))(0) & "#"
                .Pattern = "\b(SCH)(\S+)?\b"
                If .test(a(i, 1)) Then
                    Set sm = .Execute(a(i, 1))(0).submatches
                    b(i, 6) = StrConv(sm(0), 3) & IIf(sm(1) <> "", ".", "") & sm(1)
                    a(i, 1) = .Replace(a(i, 1), "")
                End If
                .Pattern = "\b[A-Z]+, [A-Z]+\b"
                If .test(a(i, 1)) Then
                    b(i, 10) = .Execute(a(i, 1))(0)
                    a(i, 1) = .Replace(a(i, 1), "")
                End If
                .Pattern = " [A-Z ]+$"
                If .test(a(i, 1)) Then b(i, 11) = Trim(StrConv(.Execute(a(i, 1))(0), 3))
            Next
            Sheets("sheet1").Range("e2").Resize(UBound(b, 1), UBound(b, 2)).Value = b
        End With
    End Sub
    Last edited by jindon; 08-19-2018 at 03:52 AM.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Split Column text in multiple columns !
    By ionelz in forum Excel General
    Replies: 1
    Last Post: 11-25-2017, 09:37 AM
  2. [SOLVED] Text from one cell split into multiple columns
    By spiritcat in forum Excel General
    Replies: 3
    Last Post: 08-26-2014, 02:03 PM
  3. [SOLVED] Split Wrapped Text (Multiple Lines) in A Cell to Multiple Columns
    By csmiin in forum Excel Formulas & Functions
    Replies: 1
    Last Post: 08-28-2012, 09:15 PM
  4. Parse Text, Split to New Row, Multiple Columns
    By msbaker in forum Excel Programming / VBA / Macros
    Replies: 2
    Last Post: 06-30-2010, 02:01 PM
  5. How to input additional text to multiple of existing cells that has text
    By RagDyer in forum Excel Formulas & Functions
    Replies: 6
    Last Post: 09-06-2005, 04:05 AM
  6. [SOLVED] How to input additional text to multiple of existing cells that has text
    By tngo@hotmail.com in forum Excel Formulas & Functions
    Replies: 0
    Last Post: 09-06-2005, 12:05 AM
  7. How to input additional text to multiple of existing cells that has text
    By tngo@hotmail.com in forum Excel Formulas & Functions
    Replies: 0
    Last Post: 09-05-2005, 10:05 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1