Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Tabelle in Excel nach der Häufigkeit des Vorkommens sortieren

Frage Microsoft Microsoft Office

Mitglied: gabeomania

gabeomania (Level 1) - Jetzt verbinden

02.06.2010 um 06:45 Uhr, 11190 Aufrufe, 3 Kommentare

Hallo, ich habe eine frage zu Excel2003 unter WinXP,
und zwar:

Normalerweise kann man ja tabellen nach alphabet oder größe des zahlenwerts sortieren. ich möchte aber meine tabelle nach häufigkeit der vorkommnisse in einer bestimmten spalte sortieren. am besten lässt es sich wohl anhand eines bespiels erläutern:

A BC D E F
1 x xx a z Blindtext 2
2 x xx b z Blindtext 2
3 x x x b z Blindtext 2
4 x xx c x Blindtext 2
5 x x x c x Blindtext 2
6 x x x cx Blindtext 2

die tabelle ist nun nach häufigkeit der werte in spalte D zu sortieren, dabei ist es wichtig, dass die einzelnen reihen zusammenbleiben.
die neue tabelle müsste fertig sortiert also folgendermaßen aussehen:

A BC D E F
1 x xx c x Blindtext 2
2 x xx c x Blindtext 2
3 x x x c x Blindtext 2
4 x xx b z Blindtext 2
5 x x x b z Blindtext 2
6 x x x az Blindtext 2

in spalte D befinden sich viele unterschiedliche werte und die liste ist sehr lang.

ich hab natürlich das problem schon gegooglet und folgendes gefunden:

Sub CountIfSort()
Dim intRow As Integer, intCounter As Integer, intArr As Integer
Range("A1").Sort key1:=Range("A1"), order1:=xlAscending, header:=xlNo
Range("B1").Formula = "=countif(A:A;A1)"
Range("B1:B" & Range("A1").CurrentRegion.Rows.Count).FillDown
Range("A1").Sort key1:=Range("B1"), order1:=xlDescending, header:=xlNo
Columns("B").ClearContents
End Sub


Dieses Makro sortiert anscheinend nach häufigkeit in spalte A. aber ich versteh das nicht ganz und vor allem wozu brauch ich da im quellcode ständig spalte B? da stehen doch bei mir eh ganz andere werte drin?
Also, wer kann mir helfen den Code auf Spalte D zu ändern?
Mitglied: TheEternalPhenom
02.06.2010 um 08:05 Uhr
Hallo gabeomania,

was es mit diesem Code von dir auf sich hat kann ich dir im Moment nicht sagen, bin noch zu müde -_-




01.
Sub Sortieren_a-z() 
02.
 
03.
    Range("A1:F7").Select 
04.
    ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Clear 
05.
    ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add Key:=Range("D1:D7") _ 
06.
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal 
07.
    With ActiveWorkbook.Worksheets("Tabelle1").Sort 
08.
        .SetRange Range("A1:F7") 
09.
        .Header = xlGuess 
10.
        .MatchCase = False 
11.
        .Orientation = xlTopToBottom 
12.
        .SortMethod = xlPinYin 
13.
        .Apply 
14.
    End With 
15.
End Sub


01.
Sub sortieren_z-a() 
02.
 
03.
    Range("A1:F7").Select 
04.
    ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Clear 
05.
    ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add Key:=Range("D1:D7") _ 
06.
        , SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal 
07.
    With ActiveWorkbook.Worksheets("Tabelle1").Sort 
08.
        .SetRange Range("A1:F7") 
09.
        .Header = xlGuess 
10.
        .MatchCase = False 
11.
        .Orientation = xlTopToBottom 
12.
        .SortMethod = xlPinYin 
13.
        .Apply 
14.
    End With 
15.
End Sub

Ein Tipp am Rande, die Makro Möglichkeit Makros unter Excel aufzuzeichnen hilft manchmal Wunder. Neben einem Denkanstoß findet man hier oftmals schon die Lösung. Also Beispiel kann ich die beiden Codes zeigen.

Ich hoffe ich konnte dir etwas helfen, trotz meines fehlenden Schlafes.

Gruß

duffman521
Bitte warten ..
Mitglied: gabeomania
02.06.2010 um 09:48 Uhr
oh ok, ich habs aber in der zwischenzeit schon gelöst. die lösung ist zwar nicht so schön, aber sogar ich bekomme sie hin.
ich hab die funktion =ZÄHLENWENN() verwendet und dann die Tabelle nach dem ergebnis dieser absteigend sortiert.

jetzt hab ich aber schon eine neue frage,
wie kann ich allen zellen in einer spalte den gleichen text voranfügen?
ich hab es mit der makro-aufzeichnung versucht, werde aber nicht schlau daraus.
Bitte warten ..
Mitglied: Biber
02.06.2010 um 21:01 Uhr
[OT]
Zitat von gabeomania:
oh ok, ich habs aber in der zwischenzeit schon gelöst. ...

jetzt hab ich aber schon eine neue frage,
wie kann ich {whatever jetzt oben auf meiner ToDo-Liste nach oben gerutscht ist} ?

Ich geb dir mal einen Tipp, wie ich es im Forum am liebsten handhabe, wenn jemand mit dem berühmten Zitat "And now something completely different...." einfach weiterzuschreiben....

---> Ich habe diesen Beitrag mal auf "Erledigt" gesetzt.

Aber neue Beiträge sind immer willkommen...

Grüße
Biber

*+* Dieser Kommentar wird nach signalisierter Einsicht des Threadowners wieder entfernt. *+*
[/OT]
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
VB for Applications
Bestimmte Daten aus eine CSV-Datei in eine Excel-Tabelle importieren (2)

Frage von MariaElena zum Thema VB for Applications ...

Microsoft Office
EXCEL VBA Termindaten aus Tabelle Filtern

Frage von t3jxbus zum Thema Microsoft Office ...

Microsoft Office
Word Dokument (vorausgefüllte Formulare) aus Excel Tabelle generieren (1)

Frage von Server4Alle zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...