Hilfe beim sortieren von Daten

03/04/2008 - 20:47 von Jens Wennemede | Report spam
Hallo NG,
ich stehe mal wieder vor einem riesigen Problem und bin mir Sicher hier wird
mir geholfen.
Folgender Sachverhalt: Aus einem Prozeßleitsystem bekomme ich einen
Datensatz als Textfile den ich mir vorsortiere. Dann bleiben die folgenden
Zahlenreihen übrig die alle in Spalte A stehen.
Es sind immer Zahlenreihen die durch ein Komme getrennt sind und am Ende ein
; haben.

Ich möchte jetzt folgendes erreichen: Wird vor dem Komma die Zahl 255
gefunden soll die Zahl nach dem Komma in dieser Zelle in Spalte B kopiert
werden und 8 mal nach oben in Spalte B
Es fàngt an mit 255,001, hier soll also 001 in Spalte B kopiert werden und
auch in alle 8 Zellen darüber. Jetzt kommt 255,002 , hier soll die 002 in
Spalte B koperiert werden un in 8 Zellen darüber. Wird in Spalte A der
Zahlfolge 005,255 gefunden wird soll die Routine aufhören. Die Datenreihen in
Spalte A sind unter Umstànden sehr lang es kann schon mal bis 255,120 gehen
was dann ca. 1000 Zeilen ausmacht.

Hier das Bsp. wie die Zahlenreihe aussieht die ich importiere...

Salte A | Spalte B
000,000;
005,050;
005,008;
005,054;
005,076;
005,056;
000,000;
000,000;
000,000;
255,001;
005,050;
005,006;
005,012;
005,053;
000,000;
000,000;
000,000;
000,000;
255,002;
005,050;
005,010;
005,012;
005,054;
005,058;
005,053;
000,000;
000,000;
255,003;
.
.
.
255,120;
005,255;

Hier das Bsp. wie die Zahlenreihe aussehen soll nachdem die Routine
durchgalaufen ist...

Salte A | Spalte B
000,000; 1
005,050; 1
005,008; 1
005,054; 1
005,076; 1
005,056; 1
000,000; 1
000,000; 1
000,000; 1
255,001; 1
005,050; 2
005,006; 2
005,012; 2
005,053; 2
000,000; 2
000,000; 2
000,000; 2
000,000; 2
255,002; 2
005,050; 3
005,010; 3
005,012; 3
005,054; 3
005,058; 3
005,053; 3
000,000; 3
000,000; 3
255,003; 3
.
.
.
255,120; 120
005,255; Hier kann die Routine aufhören.

Wie kann ich so was realisieren? Ich würde gerne einfach ein Makro eine VBA
zuweisen die dann die ewige KOpierarbeit übernimmt. Zur Zeit sortiere und
schreibe ich mir den Wolf um die 1,2,3.. 120 von HAnd einzutragen.

Für jede Hilfe bin ich dankbar.

Grüße Jens
 

Lesen sie die antworten

#1 Claus Busch
03/04/2008 - 21:38 | Warnen spam
Hallo Jens,

Am Thu, 3 Apr 2008 11:47:01 -0700 schrieb Jens Wennemede:

Hallo NG,
ich stehe mal wieder vor einem riesigen Problem und bin mir Sicher hier wird
mir geholfen.
Folgender Sachverhalt: Aus einem Prozeßleitsystem bekomme ich einen
Datensatz als Textfile den ich mir vorsortiere. Dann bleiben die folgenden
Zahlenreihen übrig die alle in Spalte A stehen.
Es sind immer Zahlenreihen die durch ein Komme getrennt sind und am Ende ein
; haben.

Ich möchte jetzt folgendes erreichen: Wird vor dem Komma die Zahl 255
gefunden soll die Zahl nach dem Komma in dieser Zelle in Spalte B kopiert
werden und 8 mal nach oben in Spalte B
Es fàngt an mit 255,001, hier soll also 001 in Spalte B kopiert werden und
auch in alle 8 Zellen darüber. Jetzt kommt 255,002 , hier soll die 002 in
Spalte B koperiert werden un in 8 Zellen darüber. Wird in Spalte A der
Zahlfolge 005,255 gefunden wird soll die Routine aufhören. Die Datenreihen in
Spalte A sind unter Umstànden sehr lang es kann schon mal bis 255,120 gehen
was dann ca. 1000 Zeilen ausmacht.



probiere es mal mit diesem Makro:
Sub Ausfuellen()

Dim rngZelle As Range
Dim LRow As Long

LRow = Cells(Rows.Count, 1).End(xlUp).Row

For Each rngZelle In Range("A1:A" & LRow)
If Left(rngZelle, 3) = "255" Then
Range("B" & rngZelle.Row - 8 & ":B" _
& rngZelle.Row) = Mid(rngZelle, 7, 1)
End If
Next

End Sub


Mit freundlichen Grüssen
Claus Busch
Win XP Prof SP2 / Vista Ultimate
Office 2003 SP2 / 2007 Ultimate

Ähnliche fragen