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

For Schleife

For Schleife
31.07.2005 08:26:54
tina
guten morgen alle zusammen,
ich habe mir folgenden code zusammengebastel:

Sub test()
Dim i As Byte
Application.ScreenUpdating = False
Range("c19").Select
ActiveCell.FormulaR1C1 = _
"=IF(OR((WEEKDAY(R4C,2)=1),(WEEKDAY(R4C,2)=5)),""no"",""ja"")"
Selection.AutoFill Destination:=Range("C19:AG19"), Type:=xlFillDefault
Range("c19").Select
Range("C19:AG19").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Range("c19").Select
For i = 3 To 33
If Cells(19, i) = "no" Then Cells(19, i) = ""
Next i
Application.ScreenUpdating = True
End Sub

dieser code soll auch in reihe 46, 73 ... also in jeder 27. reihe bis reihe 343 eingesetzt werden.
denke mir das geht auch mit ner for schleife von wegen:
for i = 19 to 343 step 27
anweisung ab C19
next i
ich weiss jetzt nicht wie ich bei C19 anfange.
range(i, 3) klappt nicht
und wie sage ich diesen ausdruck:
Range("C19:AG19")?

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: For Schleife
31.07.2005 08:29:06
Hajo_Zi
Hallo tina,
bei Schleifen macht sich die Cells Schreibweise gut
Cells(Zeile,Spalte) beide Werte numerisch.
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


sag nur du hast das kapiert ?
31.07.2005 08:38:55
roland_k
hi,,,wollte das auch wissen aber kapiere gar nichts
gruss roland_k
AW: For Schleife
31.07.2005 08:44:23
tina
hi hajo,
das mit cells klappt wunder bar,
nur bleibt der code hängen bei der zeile mit:
Selection.AutoFill Destination:=Cells("a,3:a,33"), Type:=xlFillDefault
er sagt typen unverträglich
denke es liegt an ...Cells("a,3:a,3")...
kannst du noch mal bitte drauf gucken.
danke
gruss tina
Anzeige
AW: For Schleife
31.07.2005 08:48:55
Hajo_Zi
Hallo tina,
auf select, Activate usw. kann zu 99% verzichtet werden.
Hatte ich nicht geschrieben
"Cells(Zeile,Spalte) beide Werte numerisch."
was an Deinen Ausdruck "Cells("a,3:a,33")" numerisch ist sehe ich nicht. Das ist Text
Range(cells(3,1),Cells(33,1)) mal ohne Testung
Gruß Hajo

"Wer Rechtschreibfehler findet, darf sie behalten!"
AW: For Schleife
31.07.2005 09:02:32
tina
hi hajo,
danke das du dir zeit für mich nimmst :)
habe jetzt folgenden code:

Sub test()
Dim i As Byte
For i = 19 To 46 Step 27
Range(Cells(i, 3)).Select
ActiveCell.FormulaR1C1 = _
"=IF(OR((WEEKDAY(R4C,2)=1),(WEEKDAY(R4C,2)=5)),""no"",""ja"")"
Selection.AutoFill Destination:=Range(Cells(i, 3), Cells(i, 33)), Type:=xlFillDefault
Range(Cells(i, 3)).Select
Range(Cells(i, 3), Cells(a, 33)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Range(Cells(i, 3)).Select
Next i
End Sub

fehlermeldeung lautet:
Die Methode 'Range' für das Objekt '_Global' ist fehlgeschlagen
4. reihe im code ist gelb
nochmals danke für deine hilfe
guss tina
Anzeige
AW: For Schleife
31.07.2005 09:24:15
Luschi
Hallo Tina,
in einem Beitrag (https://www.herber.de/forum/messages/643593.html) habe ich geschrieben, daß Range(...) ohne Angabe der Tabelle aus dem der Bereich stammt, sehr ungenau ist und meistens zu Fehlern führt. Deshalb sollte die Zeile so lauten:
Worksheets("TabellenName").Range(Cells(i, 3)).Select
oder ganz exakt:
ThisWorkbook.Worksheets("TabellenName").Range(Cells(i, 3)).Select
Selection und ActiveCell benötigen diese Zusatzangabe nicht aber bei Range ist das eigentlich Pflicht, um ein exaktes Ergebnis zu bekommen.
Dein Fehler rührt daher, daß mit der unpräziesen Angabe Excel versucht eine Zelle in einer Tabelle zu selektieren, die z.Z. nicht anwählbar ist. Überprüfen kann man das mit:
MsgBox Range(Cells(i, 3)).Parent.name
Damit wird der Tabellenname angezeigt auf den Range(Cells(i, 3)).Select zugreifen möchte. Und dann wirst Du sehen, daß es nicht die Tabelle ist, die Du meinst.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: For Schleife
31.07.2005 10:18:59
tina
hi,
ich habe jetzt das gemacht:

Sub test1()
Dim i As Byte
For i = 7 To 29
Worksheets("Tabelle1").Range(Cells(i, 3)).Select
ActiveCell.FormulaR1C1 = "X"
Next i
End Sub

ermeldet fehler:
Anwendungs- oder objektdefinierter Fehler
wenn ich vor Worksheets.... ThisWorkbook setze, kommt die selbe fehlermeldung
was ist denn nun noch falsch?
gruss tina
AW: For Schleife
31.07.2005 10:20:31
Hajo_Zi
Hallo Tina,
warum bnuzt Du Formaular wenn ein Wert eingeschrieben wird
Worksheets("Tabelle1").Cells(i, 3)= "X"
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


Anzeige
Jetzt habe ich es. Danke Euch :-)
31.07.2005 10:28:05
tina

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige