Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
976to980
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
976to980
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ärger mit Schleife

Ärger mit Schleife
13.05.2008 12:44:00
Martin
Hallo,
bei diesem Skript, das funktioniert, wenn Daten von spalte 1 nach Spalte 4 übertragen
werden, schaffe ich es nicht, dasselbe als Schleife danach für spalte 2 nach spalte 5
zu organisieren. Weiß jemand was ich hier vermurkse?
Option Explicit

Sub Letzte_10_Zahlen()
Dim lngRows As Long, i As Long, j As Long, k As Long
Dim ar(1 To 10) As Variant
Dim intCount As Integer
lngRows = IIf(Len(Cells(Rows.Count, 1)), Rows.Count, Cells(Rows.Count, 1).End(xlUp).Row)
j = lngRows
'   k = lngRows
intCount = 10
For i = lngRows To 1 Step -1
If Len(Cells(i, 1)) Then
Cells(j, 4) = Cells(i, 1)
j = j - 1
intCount = intCount - 1
If intCount 


Danke fürs Mitdenken,
Born

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Versuch mal, 2 Zyklen...
13.05.2008 14:15:29
Luc:-?
...ineinander zu stecken, Martin,
und melde dich dann wieder. Ich benutze i, j, k meist für die Laufindizes der Zyklen und l, m, n für die End-(Count-)Werte.
Mal als Bsp (nicht direkt dein Code)...

For i = 1 To n            'n=letzte relevante Zeile der Spalte
For j = 1 To m        'm=letzte relevante Spalte der Zeile
Cells(i, j + v) = Cells(i, j)    'v=Spaltenverschiebung
Cells(i, j) = ""
Next j
Next i 

Der innere Zyklus wird stets zuerst abgearbeitet (also erst die Spalten einer Zeile verschoben), bevor mit der nächsten Zeile (im äußeren Zyklus) fortgefahren wird.
Gruß Luc :-?

Anzeige
2 Zyklen... not really
13.05.2008 14:56:48
Martin
Hallo Luc,
ich glaube, daß dieser code funktionieren müßte, aber er tut's nicht.
Ich hab einfach zu wenig Ahnung von VBA:

Sub etc. ()
For c = 1 To 2
For i = lngRows To 1 Step -1
If Len(Cells(i, c)) Then
Cells(j, 4 + c) = Cells(i, c)
j = j - 1
intCount = intCount - 1
If intCount 


Er benimmt sich als gäbe es nur c = 1.
Irgend eine Idee?
Born

AW: 2 Zyklen... not really
13.05.2008 15:08:15
Rudi
Hallo,
welchen Wert hat denn intCount vor Beginn der Schleife? Meiner Ansicht nach 0.
Und dann:

If intCount 


Gruß
Rudi

Anzeige
AW: 2 Zyklen... not really
13.05.2008 15:28:37
Martin
Hallo Rudi,
nein, 0 soll er nicht haben. Er hat 10. Davor gehört noch:
lngRows = IIf(Len(Cells(Rows.Count, 1)), Rows.Count, Cells(Rows.Count, 1).End(xlUp).Row)
j = lngRows
intCount = 10
Gruß,
Born

AW: Guck wo angefangen, im alten Thread
13.05.2008 20:35:00
Gerd
Hallo Martin,
das ist nicht so ideal. Einen neuen Beitrag öffnen u. nur ein paar Brocken in die Runde werfen. Man sollte für die kostenlose Hilfe hier schon mal einen Tag warten können.
Gruß Gerd

AW: Guck wo angefangen, im alten Thread
13.05.2008 21:20:27
Martin
Hallo Gerd L,
schön von Dir zu lesen. Schön, daß Du aus Deiner Ecke hervorgekrochen bist.
Warum hast du vorher nie geantwortet?
Sei gegrüßt,
Born
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige