Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1020to1024
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Makroabbruch - String zu lang?
11.11.2008 11:16:31
lobby007
Hallo Excel-Spezialisten, ich habe ein Makro das eine x-te Reihe selektiert.
Das geht auch ganz toll aber nur bis ca. 150 Reihen - danach bricht er ab.
Kennt jemand die Ursache? Wie kann man das abstellen?

Sub Rows_xx()
Dim lRow As Long
Dim sRows As Variant
Dim bln3 As Integer
Dim eingzeile
eingzeile = InputBox("Jede wievielte Zeile ?")
For lRow = Selection.Row To Selection.Row + Selection.Rows.Count
bln3 = bln3 Mod eingzeile + 1
If bln3 = 1 Then
sRows = sRows & "," & lRow & ":" & lRow
End If
Next lRow
sRows = Right(sRows, Len(sRows) - 1)
Range("" & sRows & "").Select
End Sub


Er bricht in der letzten Codezeile vor End


Sub ab.
Gruß lobby


		

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makroabbruch - String zu lang?
11.11.2008 11:29:40
David
Hallo Namenloser ? (siehe auch Forumsregeln!)
überwache den Wert für sRow, vermutlich ist er in einer Form, die nicht zu Range() passt.
Gruß
David
AW: Makroabbruch - String zu lang?
11.11.2008 12:32:00
lobby007
Hallo David,
vielen Dank für die Antwort - kann lobby kein Name sein?
Habe ich überwacht, die Form ist ok, sonst würde er es ja auch nicht für einige Zeilen machen.
Ich fürchte es läuft eher etwas über?
Gruß Lobby
AW: Makroabbruch - String zu lang?
11.11.2008 13:32:00
Heiko
Hallo Lobby,
dein String hat dann halt eine Länge die 255 Zeichen überschritten und das ist oft eine Grenze bei EXCEL und VBA.
Findest du hier bestimmt bei XL Limits irgendwo:
http://www.xlam.ch/xlimits/index.htm
Also weniger Textlänge bei sRows oder das Ganze in eine Schleife.
Wobei die Frage offen bleibt wozu select, wie sagt Hajo immer schon schön auf select kann man zu 99% verzichten.
Gruß Heiko
PS: Rückmeldung wäre nett !
Anzeige
AW: Makroabbruch - String zu lang?
11.11.2008 14:16:18
lobby007
Hallo Heiko,
danke für die Antwort.
Ich fürchte auch das die Länge das Problem ist.
Frage ist nur: wie soll das ohne Selekt gehen? Ich will ja gerade selektieren.
Oder man zerlegt das in kleinere Teile (die Schleife ist eine gute Idee) - aber mir fällt dazu leider nichts ein.
Gruß lobby
AW: Makroabbruch - String zu lang?
11.11.2008 14:49:26
Heiko
Hallo Lobby,
warum willst du denn selektieren, was willst du damit bewirken.
Gruß Heiko
PS: Rückmeldung wäre nett !
AW: Makroabbruch - String zu lang?
11.11.2008 14:54:57
lobby007
Hallo Heiko,
praktisches Beispiel ist zum einen z.B. jede xte-Zeile anders zu Formatieren.
Manchmal auch löschen wenn man z.B. etwas aus dem Netz kopiert und der Aufbau eben nicht Zeile für Zeile ist sondern nur alle 4 Zeilen der eigentliche Datensatz kommt....
Das gute an dem Makro ist, dass man eben markiert/selektiert, die Selektion dann sieht und dann entscheiden kann, ob man löschen oder formatieren o.ä. will.
Gruß lobby
Anzeige
AW: Makroabbruch - String zu lang?
11.11.2008 15:06:00
Heiko
Hallo Lobby,
nun habe ich deinen Ansatz verstanden.
Da ich dazu aber trotzdem nicht selektieren würde, sondern halt per Schleife jede x-te Zeile direkt formatieren, bzw kopieren, bzw. löschen würde.
Und dein Hinweis

Das gute an dem Makro ist, dass man eben markiert/selektiert, die Selektion dann sieht und dann  _
entscheiden kann, ob man löschen oder formatieren o.ä. will.


ist ja dann hinfällig wenn du wie Eingangs erwähnt mehrere 100 Zeilen markieren willst kannst du eh nicht alle auf einmal sehen.
Kann ich dir dabei leider nicht helfen und lasse die Frage mal offen.
Gruß Heiko

Anzeige
AW: Makroabbruch - String zu lang?
11.11.2008 14:29:18
David
Hallo Lobby,
ich bin der Meinung gewesen, Lobby wäre ein Pseudonym, wenn dem nicht so ist, dann sorry.
Ist zwar prinzipiell ok, aber hier im Forum spricht man sich im Allgemeinen mit dem Vornamen an, steht auch so in der Forums-Etikette.
Gruß
DAvid
AW: Makroabbruch - String zu lang?
11.11.2008 23:51:00
Daniel
Hi
das Problem ist tatsächlich, daß der String innerhalb einer RANGE-Anweisung max. 256 Zeichen lang sein darf (natürlich kann Excel auch länger Strings verarbeiten , aber eben nicht als Berschreibung einer Range)
ne ander Möglichkeit wäre, die Zeilen in einem RANGE-Objekt zu sammeln, damit müsstest du c.a. 8000 Zeilen sammeln können.
der Code müsste dann so aussehen:

Sub Rows_xx()
Dim lRow As Long
Dim rngZeilen As Range
Dim bln3 As Integer
Dim eingzeile
eingzeile = InputBox("Jede wievielte Zeile ?")
For lRow = Selection.Row To Selection.Row + Selection.Rows.Count
bln3 = bln3 Mod eingzeile + 1
If bln3 = 1 Then
If rngZeilen Is Nothing Then
Set rngZeilen = Rows(lRow)
Else
Set rngZeilen = Union(rngZeilen, Rows(lRow))
End If
End If
Next lRow
rngZeilen.Select
End Sub


Gruß, Daniel

Anzeige
AW: Makroabbruch - String zu lang?
12.11.2008 08:02:41
lobby007
Hallo Daniel,
super, das ist es, klappt wie verrückt.
Du hast mir wirklich sehr geholfen.
Ich wünsche Dir einen schönen Tag.
Gruß lobby

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige