Kundennummer durch Wenn-Formel finden

  • #1
S

Splizz

Aktives Mitglied
Themenersteller
Dabei seit
21.03.2005
Beiträge
25
Reaktionspunkte
0
Servus Forum

Ich habe ja eigentlich nur ein ganz kleines Problem... Dachte Ich.
Es geht darum, dass in einer Zeile meiner Tabelle ein Verwendungszweck steht. In einer Zeile daneben soll er, pauschal gesagt, eine 1 reinmachen, wenn im Verwendungszweck eine Kundennummer vorhanden ist. Wenn nicht halt ne 2 oder so. Geht nur ums Beispiel.

Die Kundennummer ist 6 stellig und fängt mit einer 1 an.

Beispiele für den Inhalt des Verwendungszweck und mein gewünschtes Ergebnis...:

Text 123456 Text - 1
Text 123456 - 1
123456 Text - 1
9123456784 - 2
1234567 - 2

Hat jemand eine Idee, wie die Wenn-Formel da auszusehen hat?

Ein Anfang ist diese Formel:
=WENN(UND(A1>99999;A1<200000);1;WENN(ISTZAHL(LINKS(ERSETZEN(A1;1;SUCHEN(1?????;A1););6)+0);1;2))

Da haut soweit alles hin. Nur leider macht er bei 1234567 eine 1...

Danke für eure Hilfe
Splizz
 
  • #2
Hi splizz,

schon mal mit
Code:
=WENN(UND(A1>99999;A1<200000);1;2)
probiert ?

Gruß Matjes :)
 
  • #3
Hi

Jo, wie in meinem Beispiel ist es halt eine erste Variante. Die alleine reicht leider nicht aus, um zum Beispiel Text 123456 abzufangen.

mfg
Splizz
 
  • #4
Hi splizz,

jo jetzt hab ich es begriffen  ;D

Dann versuchs mal mit
Code:
=WENN(ISTZAHL(LINKS(ERSETZEN(A1;1;SUCHEN(1??????;A1););7)+0);2;WENN(ISTZAHL(LINKS(ERSETZEN(A1;1;SUCHEN(1?????;A1););6)+0);1;2))

Gedanklich:
Wenn 7 stellige Zahl mit 1 am Anfang -> 2 sonst
Wenn 6 stellige Zahl mit 1 am Anfang -> 1 sonst 2

Formel liefert 1 bei:
123456
Text 123456
123456 Text
Text 123456 Text

Formel liefert 2 bei:
1234567
Text 1234567
1234567 Text
Text 1234567 Text
12345
Text 12345
12345 Text
Text 12345 Text
Gruß Matjes  :)
 
  • #5
Servus

Ein Problem bleibt leider noch
bei 356123456 erkennt er eine 6 steillige Nr., die mit 1 anfängt und gibt 1 aus.

Da noch ne Idee zu?

gruß
Splizz
 
  • #6
Hi splizz,

das Problem ist mir auch aufgefallen. Hab versucht es durch einfache Logik mit WENN zu erschlagen. Dabei bin ich an die Grenze der WENNs in einer Formel gestoßen (max = 7)  :mad:

Hab nur eine Lösung mit 2 Spalten gefunden:

Spalte B:
- prüft, ob eine 1 enthalten und die 1 führend ist
- liefert  0, wenn 1 nicht führend oder nicht enthalten
Code:
=WENN(ISTZAHL(SUCHEN(1;A1));WENN(1=SUCHEN(1;A1);1;WENN(ISTZAHL(WERT(TEIL(A1;SUCHEN(1;A1)-1;1)));0;SUCHEN(1;A1;1)));0)

Spalte C:
- Wertet prüft, wenn der Wert von B ungleich 0 ist,
ob die Zahl gröger, kleiner oder gleich 6-stellig ist.
Im letzten Fall gibt sie Kontonummer aus.
Code:
=WENN(B1>0;WENN(ISTZAHL(WERT(LINKS(ERSETZEN(A1;1;SUCHEN(1??????;A1;B1););7)));>6stellig;WENN(ISTZAHL(WERT(LINKS(ERSETZEN(A1;1;SUCHEN(1?????;A1;B1););6)));Kontonummer;<6stellig));keine 1 enthalten)

Gruß Matjes :)

Entschuldige, in dem kleinen Fenster sehen alle Formeln gleich aus  :-[
 
  • #7
Servus

Ist es möglich, dass du dich beim einfügen deines Codes vertan hast?

Der Code ist sowohl für B als auch C der gleiche!?!

ciao Splizz
 
  • #8
Ist geändert.

Gruß Matjes  :)
 
  • #9
Servus

Sorry, dass ich nochmal nerven muss, aber ich krieg es selbst einfach nicht hin...

hmm, also bei dem einpflegen in meine Datei sind noch 2 Varianten zum vorschein gekommen, die er nicht hinbekommt...

KD -NR 123456 Text
123456Text

Da noch ne Idee?

gruss Splizz
 
  • #10
Hi splizz,

noch ein Versuch:

für Spalte B:
- ist eine 1 enthalten
- ist die Stelle davor eine Zahl
- ist die Stelle + 6 Zeichen dahinter eine Zahl
Code:
=WENN(SUCHEN(1;A1);WENN(ISTZAHL(WERT(TEIL(A1;SUCHEN(1;A1)-1;1)));0;WENN(ISTZAHL(WERT(TEIL(A1;SUCHEN(1;A1)+6;1)));0;SUCHEN(1;A1;1)));0)
für Spalte C:
- hat Spalte B schon entschieden->keine KtNr'
- sind die 6 Zeichen eine 6stellige Zahl mit 1 beginnend
Code:
=WENN(B1=0; keine KtNr; WENN(ISTZAHL( TEIL(A1;B1+6;1)); keine KtNr;  WENN(UND(99999<WERT(TEIL(A1;B1;6)); 200000>WERT(TEIL(A1;B1;6)));KtNr;keine KtNr)))
Gruß Matjes  :)
 
  • #11
Servus

Also es bleibt nun nicht mehr viel übrig. Es funktioniert aber leider immernoch nicht alles zu 100%. Ich habe noch ne Menge an #Wert Fehlern...

Also, wenn A1 leer ist zum Beispiel. Aber das habe ich leicht wegbekommen.

Anders siehts aus, wenn in A1 nur Text steht. Wie krieg ich das weg?

Ausserdem habe ich noch eine Variante gefunden:

14 LASTSCHRIFTEN

So kann auch ein Verwendungszweck aussehen. In B erscheint 11 aber in C erscheint #Wert.

Ciao Splizz
 
  • #12
Hi splizz,

jetzt kommt das Bügeleisen und macht die letzte (hoffentlich  ::) ) Falte raus.

für Spalte B:
Code:
=WENN(ISTZAHL(SUCHEN(1;A1));WENN(ISTZAHL(WERT(TEIL(A1;SUCHEN(1;A1)-1;1)));0;WENN(ISTZAHL(TEIL(A1;SUCHEN(1;A1)+6;1));0;SUCHEN(1;A1;1)));0)
für Spalte C:
Code:
=WENN(B1=0;keine KtNr;WENN(ISTZAHL(TEIL(A1;B1+6;1));keine KtNr;WENN(ISTFEHLER(WERT(TEIL(A1;B1;6)));keine KtNr;WENN(UND(99999<(WERT(TEIL(A1;B1;6)));200000>(WERT(TEIL(A1;B1;6))));KtNr;keine KtNr))))

Gruß Matjes  :)

ps: Bei dieser Formel-Editierei kommt mir immer wieder zu Bewußtsein, warum ich in meinem Arbeitsalltag Makros bevorzuge. Da kann man beliebige logische Untersuchungen durchführen ohne das man gespreizte Augen bekommt.  ;D
 
  • #13
Servus

So, alle Wert Fehler sind weg, das sieht schon sehr gut aus...
Leider habe ich noch DEN LETZTEN Fehler gefunden...

4419000084352X 123456 TEXT

Da sagt er, dass keine KDNR drin steht. Ist das noch wegzubekommen? Wenn nicht, ist es nicht soo tragisch, da diese Variante eher selten vorkommt...

gruss Splizz
 
  • #14
eine Schleife in einer Formel kenne ich nicht -> sehe keine Chance für Lösung mit ein/mehreren Formel.  :-\

Anbieten könnte ich eine Lösung als Makro. Da ist es schon leichter so etwas zu formulieren.  ;D

Gruß Matjes :)
 
  • #15
Servus

Nein danke! Das muss dann der Anwender per Hand machen.
Also, Vielen Dank für die Hilfe. Was würd ich nur ohne dich machen ... ;D

mfg
Splizz
 
Thema:

Kundennummer durch Wenn-Formel finden

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben