Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

UDF mit InStrRev

Forumthread: UDF mit InStrRev

UDF mit InStrRev
17.10.2008 12: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 12:05:49
Rudi
Hallo,
lngStelle = InStrRev(Firma,",")-1
Gruß
Rudi
AW: UDF mit InStrRev
17.10.2008 12: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 12: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 12: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 12: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 21: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
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige