Text extrahieren (Großbuchstaben)

Text extrahieren (Großbuchstaben)

Ich lade den Banktransaktionsverlauf herunter und möchte den Namen des Kunden extrahieren, der sich am Ende der Beschreibungszeile befindet. In einigen Zeilen stehen ein oder zwei Wörter vor dem Namen des Kunden. Wie kann ich alle Namen in Großbuchstaben extrahieren?

Außerdem muss ich den übertragenen Betrag aus dem Text extrahieren und in Zahlen umwandeln.

DESCRIPTION                                                     AMOUNT
TRSF E-BANKING DB 2701/FTSCY/WS95051 12000.00 JAMES BOND        12,000.00 DB
TRSF E-BANKING CR 2701/FTSCY/WS95051 10000.00 deposit CHRISTINE 10,000.00 CR
TRSF E-BANKING CR 2701/FTSCY/WS95051 25025.00 AMANDA B GREEN    25,025.00 CR
TRSF E-BANKING CR 2701/FTSCY/WS95051 5000.00 msn1888 JOSH BROWN  5,000.00 CR
TRSF E-BANKING CR 2701/FTSCY/WS95051 1000.00 topup CHRISTINE     1,000.00 CR

Ergebnis:

CUSTOMER      TRANSFER
JAMES BOND    12,000
CHRISTINE     10,000
AMAND B GREEN 25,025
JOSH BROWN     5,000
CHRISTINE      1,000
TOTAL         53,025

Antwort1

Verwenden von Makros/VBA:

Public Function extract_name(transaction As String)
    Dim WordArray() As String
    WordArray() = Split(transaction, " ")
    firstName = WordArray(5)
    extract_name = firstName
    extract_name_uc = UCase(extract_name)
    If extract_name = extract_name_uc Then
        topBound = 5
    Else
        topBound = 6
    End If
    extract_name = ""
    For i = topBound To UBound(WordArray)
        tempValue = WordArray(i)
        If IsNumeric(tempValue) Then
            i = UBound(WordArray)
        Else
            extract_name = extract_name & " " & tempValue
        End If
    Next i
    extract_name = Trim(extract_name)
End Function

Public Function extract_amount(transaction As String)
    Dim WordArray() As String
    WordArray() = Split(transaction, " ")
    extract_amount = WordArray(UBound(WordArray) - 1)
End Function

Es gibt zwei Funktionen extract_nameund extract_amount.

Öffnen Sie VBA mit ALT+F11, fügen Sie ein Modul ein unterDiesesArbeitsbuchund fügen Sie den Code auf der rechten Seite ein.

Angenommen, das TRSF E-BANKING DB 2701/FTSCY/WS95051 12000.00 JAMES BOND 12,000.00 DBist in der ZelleA2Dann:

B2 =extract_name(A2)UndC2 =extract_amount(A2).

verwandte Informationen