Forums Neueste Beiträge
 

Problem mit einem Ausfüllskript

22/08/2007 - 14:53 von Jakob | Report spam
Hallo:

Ich habe mal vor Jahren folgenden Quelltext für Excel 2003 bekommen:

Sub Füllen()
Dim lngDummy As Long
Dim rngDummy As Range
Dim avarDummy(1 To 1, 1 To 256) As Variant
Dim i As Long

Application.ScreenUpdating = False
With Worksheets(1)
For Each rngDummy In .Rows
For i = 1 To 256
lngDummy = lngDummy + 1
avarDummy(1, i) = "'" & Hex(lngDummy)
Next
rngDummy.Value = avarDummy
Next
End With
Application.ScreenUpdating = False
End Sub

Dieses Makro füllt das aktuelle Tabellenblatt mit einer Reihe von
sechsstelligen Hexzahlen aus.

Dieses Makro hat folgende Schönheitsfehler:

1.) Es làuft von Alpha bis Omega durch, ohne dabei auf Verluste
Rücksicht zu nehmen. Mir wàre lieber, wenn ich das Skript anweisen
könnte, daß es bei Zahl n (in Hex) starten und bei der Zahl m (mit m
größer n) aufhören soll.

2.) Was mich ein bissi stört, ist die Füllreihenfolge. Anstatt der
bisherigen Reihenfolge (Von links nach Rechts innerhalb einer Zeile und
dann von der ersten Zelle in der nàchsten Zeile). Mir wàre es sehr viel
lieber, wenn mir das Tabellenblatt spaltenweise ausgefüllt würde; sprich
von oben nach unten statt von links nach rechts.

3.) Für meine Zwecke brauche ich das Nummernzeichen ("#"). Es ist
zwar möglich, durch eine Konvertion nach CSV den größten Teil
automatisch zu erledigen, aber dann bleiben trotzdem immer noch 65536
Eintràge, die hàndisch nach gearbeitet werden müssen.
Mir wàre es recht, wenn das Skript von sich aus hinzufügen könnte.

Danke im Vorraus,

Jakob
 

Lesen sie die antworten

#1 Robert Jakob
22/08/2007 - 18:23 | Warnen spam
Am Wed, 22 Aug 2007 14:53:55 +0200 schrieb Jakob:

Hallo:

Ich habe mal vor Jahren folgenden Quelltext für Excel 2003 bekommen:

Sub Füllen()
Dim lngDummy As Long
Dim rngDummy As Range
Dim avarDummy(1 To 1, 1 To 256) As Variant
Dim i As Long

Application.ScreenUpdating = False
With Worksheets(1)
For Each rngDummy In .Rows
For i = 1 To 256
lngDummy = lngDummy + 1
avarDummy(1, i) = "'" & Hex(lngDummy)
Next
rngDummy.Value = avarDummy
Next
End With
Application.ScreenUpdating = False
End Sub

Dieses Makro füllt das aktuelle Tabellenblatt mit einer Reihe von
sechsstelligen Hexzahlen aus.

Dieses Makro hat folgende Schönheitsfehler:

1.) Es làuft von Alpha bis Omega durch, ohne dabei auf Verluste
Rücksicht zu nehmen. Mir wàre lieber, wenn ich das Skript anweisen
könnte, daß es bei Zahl n (in Hex) starten und bei der Zahl m (mit m
größer n) aufhören soll.

2.) Was mich ein bissi stört, ist die Füllreihenfolge. Anstatt der
bisherigen Reihenfolge (Von links nach Rechts innerhalb einer Zeile und
dann von der ersten Zelle in der nàchsten Zeile). Mir wàre es sehr viel
lieber, wenn mir das Tabellenblatt spaltenweise ausgefüllt würde; sprich
von oben nach unten statt von links nach rechts.

3.) Für meine Zwecke brauche ich das Nummernzeichen ("#"). Es ist
zwar möglich, durch eine Konvertion nach CSV den größten Teil
automatisch zu erledigen, aber dann bleiben trotzdem immer noch 65536
Eintràge, die hàndisch nach gearbeitet werden müssen.
Mir wàre es recht, wenn das Skript von sich aus hinzufügen könnte.

Danke im Vorraus,

Jakob



Hallo Jakob,

vergiß mal den alten Code und schreibe mal genau was Du machen willst.

Wenn man sich nur den Code ansieht, dann ist eine Entscheidung für
eine Änderung schwierig weil das wirkliche Ziel nicht bekannt ist.

MfG
Robert

Ähnliche fragen