Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

UDF mit InStrRev

Forumthread: UDF mit InStrRev

UDF mit InStrRev
17.10.2008 14:00:28
Peter
Guten Tag
Ich muss aus einem String, der einen Firmennamen inkl. Ort darstellt jeweils Ort weglassen.
Die Schreibweise ist "Firma AG, Ort". Da in der Firma selbst auch ein Komma vorkommen kann, möchte ich dies mit der untenstehenden Funktion mit Hilfe von InStrRev lösen (1. Komma von hinten suchen).
Der zu kürzende Name ist in einer Zelle eingetragen, die mit Z_Fir benannt ist.
Wenn ich die Funktion nun mit
=FirmaKurz(Z_Fir1)
aufrufe, erhalte ich die Meldung, dass die Typen unverträglich sind. Was ist nicht richtig?
Danke für eine Antwort.
Gruss, Peter

Public Function FirmaKurz(Firma as String) as String()
Dim lngStelle as Long
lngStelle = InStrRev(FirmaKurz,",")-1
FirmaKurz = Left(Firma, lngStelle)
End Function


Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: UDF mit InStrRev
17.10.2008 14:05:49
Rudi
Hallo,
lngStelle = InStrRev(Firma,",")-1
Gruß
Rudi
AW: UDF mit InStrRev
17.10.2008 14:13:00
Jürgen
Hallo Peter,
Du hast nicht in der Variable "Firma", sondern der Funktion "Firmakurz" gesucht - so sollte es gehen:

Public Function FirmaKurz(Firma as String) as String()
Dim lngStelle as Long
lngStelle = InStrRev(Firma,",")-1
FirmaKurz = Left(Firma, lngStelle)
End Function


Gruß, Jürgen

Anzeige
AW: UDF mit InStrRev
17.10.2008 14:18:00
Luschi
Hallo Jürgen und Rudi,
der Fehler liegt wo anders, siehe mein Beitrag: also die Problemlösungen auch mal testen, bevor sie auf die große Reise gehen.
Gruß von Luschi
aus klein-Paris
AW: UDF mit InStrRev
17.10.2008 14:14:00
Luschi
Hallo Peter,
die 1. Zeile muß so lauten:
Public Function FirmaKurz(Firma As String) As String
also ohne () hinter String.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: UDF mit InStrRev
17.10.2008 14:59:06
Erich
Hi Peter,
hier noch meine Version, bei eine leere Zeichenkette ausgegeben wird, wenn Firma kein Komma
oder nur eines an der ersten Stgelle enthält:

Public Function FirmaKurz(Firma As String) As String
Dim lngS As Long
lngS = InStrRev(Firma, ",") - 1
If lngS > 0 Then FirmaKurz = Left(Firma, lngS)
End Function

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: UDF mit InStrRev
17.10.2008 23:53:00
Peter
Hallo allerseits
Vielen Dank für die Antworten. Das waren unsinnige Fehler meinerseits. Die Lösung von Erich habe ich noch leicht erweitert, da ich in jedem Fall eine Rückgabe haben muss.
Gruss, Peter

Public Function FirmaKurz(Firma As String) As String
Dim lngS As Long
lngS = InStrRev(Firma, ",") - 1
If lngS > 0 Then FirmaKurz= Left(Firma, lngS) Else FirmaKurz= Firma
End Function


Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18