Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Daten numerisch auslesen und ordnen!

Betrifft: Daten numerisch auslesen und ordnen! von: Sebastian
Geschrieben am: 19.09.2006 20:16:27

Hallo an alle,

erstmal das Sieht hier ja super aus!
Nun zum Thema ich habe eine Exel Tabelle mit verschiedenen Ausdrücken z.B. "BDF125" oder "BCR458" und davon ungefähr 5000 Stück!
Möchte dies nun "nur" numerisch ordnen also die ersten 3 Buchstaben weglassen und denn Rest von 1 bis x ordnen lassen! Wichtige Info es sind überall nur 3 Zeichen amn Anfang also immer nur xxx1234!
Müsste also die ersten 3 Zeichen im String löschen, nur so also im Kopf gesehen, und dann die Zahlen Absteigend ordnen!
Komme da nicht weiter und wäre froh wenn ihr mir helfen könntet!

  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Josef Ehrensberger
Geschrieben am: 19.09.2006 20:30:16

Hallo Sebastian!

Wie wäre es mit einer Hisspalte nach der du Sortiertst?

Tabelle5

 AB
1WerteHilsspalte
2CBA322322
3BCD236236
4AOF234234
5BCD148148
6RDB124124

Formeln der Tabelle
ZelleFormel
B2=TEIL(A2;4;99)*1
B3=TEIL(A3;4;99)*1
B4=TEIL(A4;4;99)*1
B5=TEIL(A5;4;99)*1
B6=TEIL(A6;4;99)*1


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4




Gruß Sepp


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Peter Feustel
Geschrieben am: 19.09.2006 20:41:38

Hallo Sebastian,

als Makro mit einer Hilfsspalte, die wieder gelöscht wird:

Option Explicit

Public
Sub Sortieren()

Dim WkSh     As Worksheet
Dim lLetzte  As Long
Dim lZeile   As Long

   Application.ScreenUpdating = False
   
   Set WkSh = Worksheets("Tabelle1")  ' ggf. Blattnamen anpassen
   
   lLetzte = IIf(WkSh.Range("A65536") <> "", _
      65536, WkSh.Range("A65536").End(xlUp).Row) ' ggf. Spalte A anpassen
   
   WkSh.Columns("A:A").Insert Shift:=xlToRight
   
   For lZeile = 1 To lLetzte  ' ggf. Spalte A anpassen
      WkSh.Range("A" & lZeile).Value = _
        Mid(WkSh.Range("B" & lZeile).Value, 4, Len(WkSh.Range("B" & lZeile).Value) - 3)
   Next lZeile
   
   WkSh.Range("A1:Z" & lLetzte).Sort _
      Key1:=WkSh.Range("A1"), _
      Order1:=xlDescending, _
      Header:=xlGuess, _
      OrderCustom:=1, _
      MatchCase:=False, _
      Orientation:=xlTopToBottom
   
   Columns("A:A").Delete Shift:=xlToLeft
   
   Application.ScreenUpdating = True

End Sub


Viele Grüße Peter

Eine kurze Nachricht, ob es läuft, wäre nett - danke.


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Sebastian
Geschrieben am: 19.09.2006 20:54:18

Hi danke für die schnelle Antowrt allerdings hat der Compiler Probleme mit dem Quelletxt den du mir gegeben hast!
Und zwar mit der ersten FOR schleife mit der Anweisung!
Wäre nett wenn du das mal überprüfen könntest


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Sebastian
Geschrieben am: 19.09.2006 20:57:40

Zur ersten Lösung das Problem liegt leider darn das ich nacher keine Hilfeleiste mehr gebrauchen kann oder bzw. wie kann ich die Spalte A dann sortieren!


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Peter Feustel
Geschrieben am: 19.09.2006 21:13:13

Hallo Sebastian,

bei mir funktioniert das Makro einwandfrei, ich weiß also nicht, was ich wo ändern könnte.

Viele Grüße Peter

Eine kurze Nachricht, ob es läuft, wäre nett - danke.


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Sebastian
Geschrieben am: 19.09.2006 21:15:15

Wo füge ioch das denn ein?
Mach den Skript Editor auf erstelle ein neues Makro und füge den Quelltext dort ein entferne das End Sub
und fertig


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Sebastian
Geschrieben am: 19.09.2006 21:18:09

Und wie mache ich das das der bei eins anfängt anstatt bei der höchsten Zahl???


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Sebastian
Geschrieben am: 19.09.2006 21:22:46

Sorry war mein Fehler du hattest gar keinen! Habe den Makro Namen gändert und dadurch kamm der in Schwierigkeiten! Wäre nett wenn du mir noch sagen könntest wir ich anders sortier von 1 nach x!?

Vielen Dank ihr habt mir schon sehr weitergeholfen!


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Peter Feustel
Geschrieben am: 19.09.2006 21:31:25

Hallo Sebastian,

ändere im Sort-Befehl Descending (absteigend) in Ascending (aufsteigend).

Viele Grüße Peter

Eine kurze Nachricht, ob es läuft, wäre nett - danke.


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Sebastian
Geschrieben am: 20.09.2006 05:36:08

Morgen,

läuft super weiß jetzt auch woher der fehler kam, hatte die liste grade nicht zur verfügung und habe keine dummy werte eingetragen gehabt deswegen die mucke mit dummy werten ha er es gemacht!
Du könntest mir aber nochmal helfen!
wenn ich nur meine spalte a habe und möchte nun die ersten 5 werte horizontal eintragen und das mit allen werten!
also A1-A1 A2-B1 A3-C1 A4- D1 und A5-E1 und dann A6-A2 A7-B2 usw. bis zum ende
kann man sowas automatisieren!?


  


Betrifft: AW: Daten numerisch auslesen und ordnen! von: Peter Feustel
Geschrieben am: 21.09.2006 15:04:40

Hallo Sebastian,

das könnte so gehen:

Sub Waagerecht()

Dim lZeile   As Long
Dim nZeile   As Long: nZeile = 1
Dim iSpalte  As Integer

   For lZeile = 1 To Range("A65536").End(xlUp).Row Step 5
      Cells(nZeile, 2).Value = Cells(lZeile + 0, 1).Value
      Cells(nZeile, 3).Value = Cells(lZeile + 1, 1).Value
      Cells(nZeile, 4).Value = Cells(lZeile + 2, 1).Value
      Cells(nZeile, 5).Value = Cells(lZeile + 3, 1).Value
      Cells(nZeile, 6).Value = Cells(lZeile + 4, 1).Value
      nZeile = nZeile + 1
   Next lZeile

End Sub


Viele Grüße Peter

Eine kurze Nachricht, ob es läuft, wäre nett - danke.


 

Beiträge aus den Excel-Beispielen zum Thema "Daten numerisch auslesen und ordnen!"