Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
436to440
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
436to440
436to440
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Durchnummerieren von doppelten Postleitzahlen

Durchnummerieren von doppelten Postleitzahlen
02.06.2004 01:21:40
doppelten
Einen schönen guten Morgen zusammen,
ich habe ein kleines Problem bei der weiteren Bearbeitung meiner Postleitzahlen-Liste und gleichzeitig die große Hoffnung, dass mir jemand freundlicherweise aus diesem Forum weiterhelfen kann.
Fall:
In Spalte A stehen meine sortierten (aufsteigenden) Postleitzahlen, jedoch sind darunter auch einige PLZ, die doppelt aufgeführt werden, weil es fast immer zu einer PLZ auch mehrere Orte gibt.
Wie gesagt habe ich in Spalte B die entsprechenden Orte aufgeführt, was aber für meine Problemlösung soweit nicht berücksichtigt werden muss.
Ich möchte es nun schaffen, dass grundsätzlich in der jeweiligen Spalte C jeweils eine 1 geschrieben wird, wenn die entsprechende PLZ aus Spalte A nur einmal vorkommt.
Kommt hingegen eine PLZ mehrfach vor, so sollte die entsprechende Zelle in C jeweils mit einer 1 beginnen und dann vorlaufend eine 2, 3, ... und so weiter geschrieben werden bis wieder einen andere neue PLZ aus Spalte A dann wieder eine neue 1 in der entsprechenden Zelle der Tabelle C setzt.
Zum besseren Verständnis habe ich ein kleines Beispiel beigefügt, wobei die Spalte A einen Teil meiner fortlaufenden Postleitzahlen darstellen und die Spalte C die entsprechende Lösung sein sollte!
PLZ ORTE LÖSUNG
4375 Cottonvale 1
4376 Thulimbah 1
4377 The Summit 1
4378 Applethorpe 1
4380 Eukey 1
4380 Greenlands 2
4380 Stanthorpe 3
4381 Glen Aplin 1
4382 Ballandean 1
4382 Wyberba 2
4383 Wallangarra 1
4384 Limevale 1
4385 Beebo 1
4385 Bonshaw 2
4385 Glenarbon 3
4385 Maidenhead 4
4385 Riverton 5
4385 Silver Spur 6
4385 Smithlea 7
4385 Texas 8
4385 Watsons 9
4387 Brush Creek 1
4837 Bybera 2
usw. usw. usw.
Hinweis:
Es gibt auch PLZ in meiner Excel-Tabelle, die mit einer Null beginnen!
Zum Beispiel:
0200 Anu, 0221 Barton, 0291 Canberra Mc, 0293 Canberra Mc, 0294 Canberra Mc, usw.
Besten Dank im Voraus für sehr gute Vorschläge, die auch noch bei voller Ausschöpfung der Excel-Zeilen-Kapazität funktionieren!

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Durchnummerieren von doppelten Postleitzahlen
doppelten
Hallo,
die letzte Zeile vor usw. usw. usw. stimmt aber nicht, oder habe ich das
etwas falsch verstanden?
Sowas klappt natürlich auch für viele Zeilen, nur ist VBA generell nicht
gerade sehr schnell.
Gruß K.Rola
AW: Durchnummerieren von doppelten Postleitzahlen
doppelten
Hallo Derik,
eine Idee, schreib in C2 folgende Formel und zieh sie nach unten:
=WENN(A2A1;1;C1 +1)
Gruß
Reinhard
AW: Durchnummerieren von doppelten Postleitzahlen
doppelten
Hallo,
"die auch noch bei voller Ausschöpfung der Excel-Zeilen-Kapazität funktionieren!"
Deine Formel funktioniert da natürlich, aber tut man sich sowas an, 65000
Formeln in einer Tabelle für einen einmaligen Vorgang?
Gruß K.Rola
Anzeige
AW: Durchnummerieren von doppelten Postleitzahlen
02.06.2004 09:48:15
doppelten
Hallo Derick,
für solch große DB's solltest Du dich mit Acces anfreunden.
Hier sind die Möglickeiten erheblich größer. Siehe SQL_Abfrage-Technik.
Zusätzlich findest Du fertige PLZ_DB's für D;A;I;CH im Internet.
Für GB oder USA dürfte es auch entsprechende DB's im Internet geben.
Suchet so werdet Ihr finden !!!
mfg
Gert Seler
AW: Formel schnell per VBA eintragen
Martin
Hallo Derik,
Reinhards Formel läßt sich mit VBA wie folgt eintragen:

Sub Formel_rein()
z = Range("A65536").End(xlUp).Row
Range("C2:C" & z).FormulaR1C1 = "=IF(RC[-2]<>R[-1]C[-2],1,R[-1]C +1)"
End Sub

Dauert bei mir bei 65000 Zeilen weniger als eine Sekunde. Wenn Du mehrere Tabellen hast, läßt sich das Ganze noch in eine Schleife einbetten. Vielleicht sollte man die Formelergebnisse wg. Speicherbedarf/Performance noch in Werte umwandeln.
Gruß
Martin Beck
Anzeige
AW: Durchnummerieren von doppelten Postleitzahlen
03.06.2004 01:08:18
doppelten
Hallo Reinhard,
Deine Formel funktoniert von den bisherigen Lösungsvorschlägen noch am schnellsten, auch wenn die Handhabung ("kopieren, bzw. nach unten ziehen) bei "voller Bandbreite" recht umständlich ist!
Vielen Dank für Deinen Tipp!!!
=zählenwenn($A$2:$A2;$A2)
IngoG
Hallo Derik,
obige formel nach c2 eintragen und nach unten kopieren...
Gruß Ingo
PS eine Rückmeldung wäre nett...
AW: =zählenwenn($A$2:$A2;$A2)
03.06.2004 01:00:09
Derik
Hallo Ingo,
Ich habe Deine Formel "=zählenwenn($A$2:$A2;$A2´)" sofort ausprobiert und kann diese bei kleinen Datenbeständen bestens empfehlen.
Frohen Mutes habe ich dann Deine Formel bei einer nur durchschnittlichen PLZ-Datei von nur ca. 47.000 Zeilen eingesetzt und ...!!!
Sorry, aber Excel hängt sich damit GRUNDSÄTZLICH auf!!!
Entweder hat Excel nach einer gewissen Zeit keine Rückmeldung mehr oder aber man bekommt die "tröstende" Meldung: "Microsoft Excel kann diesen Vorgang mit den verfügbaren Ressourcen nicht ausführen. Bitte wählen Sie weniger Daten aus!"
An meinen Ressourcen kann es nicht liegen! Speicher im Überfluß vorhanden!
Selbst nach einem erneuten Versuch (zuvor Neustart meines Computers) rödelte mein Computer stundenlang vor sich hin, ohne überhaupt zum Ende zu kommen!
Tja, wie heißt es so schön?
"Und wenn sie nicht gestorben sind, dann warten sie heute noch auf ein Ergebnis! LOL...!!!
Aber wie gesagt, Ingo, bei kleineren Einträgen würde ich Deine Formel jederzeit den Vorzug geben, weil man sogar die PLZ jederzeit nach einem erfolgreichen Durchlauf ändern kann und tatsächlich das neue Ergebnis entsprechend richtig berechnet wird!!!
Besten Danke für Deine Mühe, aber leider hilft mir Deine Formel bei meinen Mammutdaten nicht weiter! Sorry!!!
Hat jemand noch weitere Vorschläge?
Würde gern auch einmal einen Script ausprobieren, damit ich nicht immer eine bestimmte Formel in alle Zeilen "nach unten kopieren" muss.
Anzeige
Danke für die Rückmeldung oT
IngoG
.
AW: Durchnummerieren von doppelten Postleitzahlen
doppelten
Hi Derik,
pobiers mal so:

Sub plz()
With Worksheets("Tabelle1")
lizeile = .Range("A65536").End(xlUp).Row 'letzte Zeile in A
.Range("D1").FormulaR1C1 = "1"
.Range("D1").AutoFill Destination:=.Range("D1:D20"), Type:=xlFillSeries
For n = 2 To lizeile
If .Cells(n, 1) <> .Cells(n - 1, 1) Then
.Range("D1:D20").Copy Destination:=.Cells(n, 3)
End If
Next n
End With
Range(Cells(lizeile + 1, 3), Cells(lizeile + 21, 3)).Clear
Range("D1:D20").Clear
End Sub

Gruß
Reinhard

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige