3.6k Aufrufe
Gefragt in Tabellenkalkulation von
Guten Tag,

Ich habe eine Frage zu einem Excel Problem.
Ich habe eine Liste, Spalte A Postleitzahlen, Spalte B die Orte
Bsp:
1257 Dresden
1257 Dresden
1277 Dresden
1309 Dresden
1324 Dresden
1587 Riesa
1587 Riesa
1809 Heidenau
1809 Heidenau
1979 Lauchhammer
2708 Löbau
2708 Löbau
2785 Olbersdorf
2785 Olbersdorf
2826 Görlitz
2894 Sohland a. Rotstein
2894 Sohland a. Rotstein
3172 Guben
3238 Finsterwalde
4157 Leipzig
4159 Leipzig


ich hätte jetzt gerne 1x eine Liste in der jede PLZ mit ihrer Häufigkeit steht
und einmal eine Liste wie häufig die jeweilgen Orte vorkommen.

Ergebniss soll also sein

2894 2
4157 1
4159 1

und

Sohland a. Rotstein 2
Leipzig 2

13 Antworten

0 Punkte
Beantwortet von Experte (9.8k Punkte)
=ZÄHLENWENN(E4:E46;"1257")

jeweils die plz eintragen

vadder
0 Punkte
Beantwortet von
danke für die schnelle Antwort,


die Liste enthält ca 300 PLZ, jede einzelne eintragen kommt also eher nicht in betracht.
Gibt es in Excel eine andere Möglichkeit?

Viele Grüße,
Sebastian
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Sebastian,

mit einer Pivottabelle würde es so aussehen:

Beispiel

Für die Postleitzahlen hab ich es gemacht.

Vielleicht entspricht es Deinen Vorstellungen.


schöne Grüße

Paul1

Excel 2003/XP prof.
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi all :-)

spalte a+b = daten
spalte c+d=ausgabe

gruss nighty

Option Explicit
Sub MakroStart()
Call EventsOff
Call ArraySuchePostleitZahl
Call ArraySucheStadt
Call EventsOn
End Sub
Sub ArraySuchePostleitZahl()
Dim Puffer As Variant
Dim QuelleZeilen As Long
Dim SucheZeilen As Long
Dim ZelleQuelle1 As Long
Dim ZelleQuelle2 As Long
QuelleZeilen = Worksheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
ReDim ArrayQuelle(1 To QuelleZeilen, 1) As Variant
ReDim ArrayZiel(1 To QuelleZeilen, 1) As Variant
ArrayQuelle = Range(Cells(1, 1), Cells(QuelleZeilen, 1))
ArrayZiel = Range(Cells(1, 1), Cells(QuelleZeilen, 1))
For ZelleQuelle1 = 1 To QuelleZeilen
Puffer = ArrayQuelle(ZelleQuelle1, 1)
For ZelleQuelle2 = ZelleQuelle1 To QuelleZeilen
If Puffer = ArrayQuelle(ZelleQuelle2, 1) And ArrayQuelle(ZelleQuelle2, 1) <> "" Then
ArrayZiel(ZelleQuelle1, 1) = CStr(Val(ArrayZiel(ZelleQuelle1, 1)) + 1)
ArrayQuelle(ZelleQuelle1, 1) = ""
ArrayQuelle(ZelleQuelle2, 1) = ""
Else
ArrayZiel(ZelleQuelle2, 1) = ""
End If
Next ZelleQuelle2
Next ZelleQuelle1
Range(Cells(1, 3), Cells(QuelleZeilen, 3)).Resize(UBound(ArrayZiel())) = ArrayZiel()
End Sub
Sub ArraySucheStadt()
Dim Puffer As Variant
Dim QuelleZeilen As Long
Dim SucheZeilen As Long
Dim ZelleQuelle1 As Long
Dim ZelleQuelle2 As Long
QuelleZeilen = Worksheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
ReDim ArrayQuelle(1 To QuelleZeilen, 1) As Variant
ReDim ArrayZiel(1 To QuelleZeilen, 1) As Variant
ArrayQuelle = Range(Cells(1, 2), Cells(QuelleZeilen, 2))
ArrayZiel = Range(Cells(1, 2), Cells(QuelleZeilen, 2))
For ZelleQuelle1 = 1 To QuelleZeilen
Puffer = ArrayQuelle(ZelleQuelle1, 1)
For ZelleQuelle2 = ZelleQuelle1 To QuelleZeilen
If Puffer = ArrayQuelle(ZelleQuelle2, 1) And ArrayQuelle(ZelleQuelle2, 1) <> "" Then
ArrayZiel(ZelleQuelle1, 1) = CStr(Val(ArrayZiel(ZelleQuelle1, 1)) + 1)
ArrayQuelle(ZelleQuelle1, 1) = ""
ArrayQuelle(ZelleQuelle2, 1) = ""
Else
ArrayZiel(ZelleQuelle2, 1) = ""
End If
Next ZelleQuelle2
Next ZelleQuelle1
Range(Cells(1, 4), Cells(QuelleZeilen, 4)).Resize(UBound(ArrayZiel())) = ArrayZiel()
End Sub
Public Sub EventsOff()
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
End Sub
Public Sub EventsOn()
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End Sub
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi all .-)

die daten parallel abzuarbeiten waere natuerlich sinnvoller :-))

hab mir da noch nicht so die gedanken darueber gemacht ^^^

erstmal auf die schnell *hihi*

gruss nighty
0 Punkte
Beantwortet von
Hello,


also irgendwie bekomme ich das alles nicht hin sorry,

hier ist die besagte excel tabelle.
Könnt ihr mir da helfen?

rapidshare.com/files/445756310/plz.xlsx

ich danke im voraus schon mal vielmals!!


Viele Grüße,
Sebastian
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi Sebastian

die datei ist nicht lesbar fuer mich

die makros sind doch aber eindeutig

spalte a postleitzahl
spalte b ort

ausgabe erfogt

spalte c +d

makro starten,fertig

gruss nighty
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Sebastian,

Es kann sich eigentlich nur mehr um die Umsetzung der Lösungsvarianten handeln, vielleicht könntest Du uns genauer beschreiben wo der Schuh drückt.

schöne Grüße

Paul1

Excel 2003/XP prof.
0 Punkte
Beantwortet von
richtig, ich weiß nicht wie ich makros aufführen kann,
tut mir wirklich leid ich bin in excel leider alles andere als fit :/


kann mich immer nur wieder bei euch bedanken,
super forum ist das hier
0 Punkte
Beantwortet von
rapidshare.com/files/445828010/plz2.xlsx

könnt ihr das hier öffnen?!
...