Spalten mit For Laufvariablen ansprechen

Allan Sche Sar

Lt. Commander
Registriert
Jan. 2004
Beiträge
1.891
Hallo ihr,

ich habe im Prinzip ein total simples Problem, finde aber keine Lösung im Netz - scheinbar suche ich das falsche.
Daher hoffe ich auf euch.

Ich möchte mit einer For-Anweisung Spalten durchgehen, also A, B, C, D, ... die Zeile ist dabei immer die gleiche.

Also Code würde meine Überlegung so aussehen:
Code:
Sub Test()

Dim SpalteEnde As Integer
Dim Modbeschr As String


Modbeschr = "Logger1"
SpalteEnde = Workbooks("ELPRO Import.xlsm").Worksheets(Modbeschr).UsedRange.Columns.Count

For i=1 to SpalteEnde
 ActiveSheet.Cells(i; 9).Select
 'es folgen weitere Anweisungen, die nicht relevant für das Beispiel sind.

Next i

End sub

Aber mein Code funktioniert nicht.
Wie geht es richtig?
 
Hi,

welches Programm denn konkret überhaupt? Excel? Falls ja, welche Version?

VG,
Mad
 
Am Drehen liegts:
Cells(9, i)
…und das Ding schnurrt wie eine Kätzchen. MS hat idiotischerweise eine Zelle F9 mit den Koordinaten 9, 6 gleichgesetzt - das wird mich ewig verwirren.

CN8
 
Der richtige Zellverweis steht eins drüber, nur was willst du mit select? Die letzte Spalte kannst du auch bei der for Schleife setzten (also nicht erst in die variable) und vorallem des aktive sheet als with deklarieren und mit .cells weiterarbeiten. Spart Excel Zeit und der Code sieht besser aus.

Edit: Und dein Code ist nicht konsistent da du die letzte beschriebene Spalte aus einem definierten Sheet nimmst und dann mit dem aktiven Blatt weiterarbeitest.

Ich finde halt wenn man was macht dann macht mans richtig und wer weiß wie oft du des dann noch brauchen kannst. Dabei lernst du auch einiges.
 
Zuletzt bearbeitet:
Ich glaube ich muss einen Besen fressen o.0 Es klappt!
Aber ich habe jetzt einen Fehler festgestellt.

i muss bei 2 starten, aber in der resten Anweisung 1 sein.
Daher habe ich die erste Zeile wie folgt geändert:
Code:
ActiveSheet.Cells(9, i-1).Select

Mit
Code:
ActiveSheet.Cells(9,i).Select
läuft der Code. Seit wann kann ich denn nicht mehr addieren oder subtrahieren in einer solchen Anweisung?


TomG87 schrieb:
Der richtige Zellverweis steht eins drüber, nur was willst du mit select? Die letzte Spalte kannst du auch bei der for Schleife setzten (also nicht erst in die variable) und vorallem des aktive sheet als with deklarieren und mit .cells weiterarbeiten. Spart Excel Zeit und der Code sieht besser aus.

Ich will nicht die letzte Spalte auswählen, sondern jede Spalte zwischen Start und Ziel (letzte belegte Spalte). Das Select ist derzeit nur als Testplatzhalter da. Mir fällt es leichter, wenn ich den Code Schritt für Schritt aufbaue.
Am Ende sind dann bei mir ordentliche Codes auf dem Bildschirm.
 
Zuletzt bearbeitet:
Dann is ja alles gut. Du kannst da schon mathematische Operationen reinsetzen, nur drauf achten das ein valides Ergebnis dabei rauskommt. Oder du arbeitest mit offset.

Zu deiner Anmerkung mit der letzten Spalte. Ich meinte auch die letzte beschriebene, war wohl bisl verwirrend geschrieben. Siehe hier, das mein ich:
http://www.office-loesung.de/ftopic473280_0_0_asc.php
 
Zurück
Oben