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

Range vs. Cells

Range vs. Cells
02.04.2008 22:11:00
Gordon
Moin,
hab mal 'ne allgemeine Frage:
Was macht den Unterschied wenn ich eine Zelle im Excel per VGA mit Cells(1, 1) anspreche statt mit Range("A1")?
Gruß
Gordon

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Range vs. Cells
02.04.2008 22:42:00
Ramses
Hallo
Mit "Cells" kannst du einfacher Variablen verwenden
For i = 1 to 10
Cells(i,1) = "x"
Next i
Mit Range müsstest du die Anweisung so schreiben
For i = 1 to 10
Range("A" & i) = "x"
Next i
Ist etwas komplizierter. Fast unmöglich wird es, wenn du nicht Zeilen ausfüllen willst sondern Spalten
For i = 1 to 10
Cells(1,i) = "x"
Next i
Mit Range müsstest du die Anweisung so schreiben
For i = 1 to 10
Range(Left(Columns(i).Address(0,0),1) & i) = "x"
Next i
Die Anweisung Range bietet sich jedoch an, wenn du mit Namen arbeitest
Range("DeinBereichsname").Select
Gruss Rainer

Anzeige
AW: Range vs. Cells
02.04.2008 22:47:00
Gordon
Aha,
ok....ist also nur eine Sache der "Vereinfachung". Aber im Grunde kann man mit beidem ohne Einschränkung arbeiten?
Gruß
Gordon

AW: Range vs. Cells
02.04.2008 22:51:29
Ramses
Hallo
"...Aber im Grunde kann man mit beidem ohne Einschränkung arbeiten?..."
Das ist korrekt.
Gruss Rainer

AW: Range vs. Cells
02.04.2008 22:58:00
Gordon
Danke für Hilfe...

AW: Range vs. Cells
02.04.2008 23:04:00
Uduuh
Hallo,
kann man.
Range ist allerdings einen Tick langsamer als Cells, da Range interpretiert werden muss. Intern wird's auch wieder zu Cells. Das allerschnellste ist aber, wenn du den Range in ein Array einliest.
Teste mal:

Sub ttt1()
Dim t As Double, i As Long, n
t = Timer
For i = 1 To 50000
n = Cells(i, 1)
Next
MsgBox Timer - t
End Sub



Sub ttt2()
Dim t As Double, i As Long, n
t = Timer
For i = 1 To 50000
n = Range("A" & i)
Next
MsgBox Timer - t
End Sub



Sub ttt3()
Dim t As Double, i As Long, n, vntRng
t = Timer
vntRng = Range(Cells(1, 1), Cells(50000, 1))
For i = 1 To 50000
n = vntRng(i, 1)
Next
MsgBox Timer - t
End Sub


Gruß aus’m Pott
Udo

Anzeige

63 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige