Anzeige
Archiv - Navigation
972to976
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
972to976
972to976
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA Syntax mit Range

VBA Syntax mit Range
08.05.2008 11:24:00
David
Hallo.
Nachdem ich jetzt schon eine halbe Stunde rumprobiere, wende ich mich (mal wieder) an euch.
Ich möchte folgenden Ausdruck

Range("D9").EntireColumn.Insert


derart umgestalten, dass das D9 variabel wird.
Der entsprechende (Teil)code dafür steht momentan bei mir so:


If Left(.Cells(3, Spalte), 1) = "Q" Then
Range(Cells(1, Spalte + 1)).EntireColumn.Insert
End If


(Sinn: Finde in Zeile 3 alle Zellen mit "Q" beginnend und füge rechts daneben eine leere Spalte ein)
Das funzt aber net, ich krieg immer nur die Meldung "Die Methode Range ist für das Objekt _Global fehlgeschlagen" Ich hab jetzt schon mit einigen Kombinationen getestet, aber bisher erfolglos.
Was ist falsch?
Danke schon mal.
Gruß
David

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Syntax mit Range
08.05.2008 11:47:57
Uwe
Hi David,
in Deiner Formel darf der Wert von Spalte nur eine ganze Zahl von 1 bis 254 sein, ich tippe mal dem ist nicht so?
Gruß
Uwe
(:o)

AW: VBA Syntax mit Range
08.05.2008 11:52:00
David
Könnte man vermuten, in meinem Fall war "Spalte" = 8, das sollte noch passen. ;-)
Ich habe jetzt mal noch diese Variable definiert. Als Byte ging nicht, kam Fehler "Überlauf", ist jetzt als Integer definiert, hab aber nichts gebracht.
Ich bin immer noch der Meinung, ich habe einfach nur irgendwo einen Syntax-Fehler.
Gruß

AW: VBA Syntax mit Range
08.05.2008 12:02:50
Uwe
Hi David,
sorry, da habe ich den Wald vor lauter Bäumen nicht gesehen:
Cells(1, spalte + 1).EntireColumn.Insert
klappt, das Range ist zuviel.
Gruß
Uwe
(:o)

Anzeige
AW: VBA Syntax mit Range
08.05.2008 12:07:00
David
Jep, das wars, danke.
Die Hilfe ist da recht undurchsichtig, da Range auf viele verschiedenen Arten verwendet wird.
Soweit ich das verstanden habe, verwendet man Range bei einem Bereich und Cells bei einzelnen Zellen. Deswegen verstehe ich allerdings nicht, wieso der Makrorekorder das dann mit Range aufzeichnet, dahinter aber nur eine Zelle schreibt.
Naja, ist auch egal... :-)

AW: VBA Syntax mit Range
08.05.2008 12:19:00
Uwe
Hi,
.... um Dich ein bisschen zu verwirren:
Wenn Du statt einer, gleich drei Spalten einfügen möchtest, wäre die Zeile:
Range(Cells(1, spalte + 1), Cells(1, spalte + 3)).EntireColumn.Insert
aber im Prinzip hast Du recht. Der Recorder arbeitet aber soweit ich weiß prinzipiell nur mit Range.
Der Vorteil von Cells ist, dass man die spalte numerisch eingeben kann/muss, was bei Schleifen natürlich von großem vorteil ist.
Gruß
Uwe
(:o)
Anzeige

232 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige