UDF berikut adalah dasar regular expression dengan VB.
Silakan dikembangkan untuk menjadi sebuah fungsi yang sesuai kebutuhan.
Bagian yang tebalkan bisa dihilangkan dengan meng-set references untuk
mengaktikan library MS VBScript Regular Expression x.y
Pilih versi yang paling baru yang dimiliki. Umumnya 5.5


Public Function PisahAngka(sTeks As String, Optional sDelimiter As String =
"-") As String
    Dim oRegExp As Object
    Dim oRegMatch As Object
    Dim sTemp As String
    Dim sPattern() As String
    Dim vPattern As Variant

    sPattern = Split("[0-9][a-z]|[a-z][0-9]", "|")
*    Set oRegExp = CreateObject("vbscript.regexp")
*
    For Each vPattern In sPattern
        With oRegExp
            .Global = False
            .MultiLine = True
            .ignorecase = True
            .Pattern = vPattern
        End With

        Do
            Set oRegMatch = oRegExp.Execute(sTeks)
            If oRegMatch.Count > 0 Then
                sTemp = Left$(oRegMatch(0), 1) & _
                        Chr$(160) & sDelimiter & Chr$(160) & _
                        Right$(oRegMatch(0), 1)
                sTeks = Replace$(sTeks, oRegMatch(0), sTemp)
            Else
                Exit Do
            End If
        Loop
    Next
    PisahAngka = Replace$(sTeks, Chr$(160), vbNullString)
End Function

Cara pakai :
=PisahAngka( cell_teks, "teks pemisahnya" )

Regards.
Kid.


2010/8/13 Barry <[email protected]>

>
>
> Dear Master XL,
>
> mau tanya soalnya ada kasus di kantor dengan contoh data
>
> 100SEV50
> 10SEV5
> SEV5
> 8TL100
> 6TL5
> dst..
> Agar menjadi
> 100SEV50 menjadi 100 - SEV - 50
> 6TL5 menjadi 6 - TL - 5
> dst..
> nach bagaimana caranya supaya memisahkan angka huruf kemudian angka langi
> pada kolom sebelahnya?? mohon bantuan para Master. Dan saya ucapkan terima
> kasih sebelumnya.
>
>  
>

Kirim email ke