![Text extrahieren (Großbuchstaben)](https://rvso.com/image/1482495/Text%20extrahieren%20(Gro%C3%9Fbuchstaben).png)
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_name
und 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 DB
ist in der ZelleA2Dann:
B2 =extract_name(A2)
UndC2 =extract_amount(A2)
.