Excel: Workbook-kürzel

Hallo Experten,
da ich zur Zeit imemr zwischen Arbeitsmappen und Arbeitsblättern hin und herspringe, würde ich gerne mir dafür eine Variable setzen.
So wie ich mir das gedacht habe funktioniert das natürlich nicht.

 Dim t1, t2, t3
 t1 = Workbooks(strMappeName1).Worksheets("Blatt1")
 t2 = Workbooks(strMappeName1).Worksheets("Blatt2")
 t3 = Workbooks(strMappeName2).Worksheets("Blatt2")
 t1.cells(1,1)= "Überschrift"
 for i= 2 to letzteZeile
 t1.Cells(1, i).Value = t3.Cells(1,i).Value
 next i

Aber das muss doch gehen, oder? Wäre nett, wenn man mir da ein hint geben könnte. Oder muss ich tatsächlich zwei Variablen nehmen?

Dim wb1 as Workbook, wb2 as Workbook
Dim wksSheet1 As Worksheet
Dim wksSheet2 As Worksheet
wb1.wksSheet1.Cells(1,i) .... 

Danke für eure Zeit
Grüße
Winter
P.S.
Workbooks(strMappeName1).Worksheets(„Blatt1“).Cells(1,1).Value = …
funktioniert. also an der Variablen kann es nicht liegen

Hallo Experten,
da ich zur Zeit imemr zwischen Arbeitsmappen und
Arbeitsblättern hin und herspringe, würde ich gerne mir dafür
eine Variable setzen.
So wie ich mir das gedacht habe funktioniert das
natürlich nicht.

Dim t1, t2, t3
t1 = Workbooks(strMappeName1).Worksheets(„Blatt1“)
t2 = Workbooks(strMappeName1).Worksheets(„Blatt2“)
t3 = Workbooks(strMappeName2).Worksheets(„Blatt2“)
t1.cells(1,1)= „Überschrift“
for i= 2 to letzteZeile
t1.Cells(1, i).Value = t3.Cells(1,i).Value
next i

Aber das muss doch gehen, oder? Wäre nett, wenn man mir da ein
hint geben könnte.

Hallo,

achte auf eine saubere Deklaration der Variablen.

Dim t1 as Worksheet, t2 as Worksheet, t3 as Worksheet

Da es sich hier um Objektvariablen handelt, müssen diese mit dem einleitenden Code „SET“ festgelegt werden.

Set t1 =Workbooks(strMappeName1).Worksheets("Blatt1")

Dann kann man über den Variablennamen auf die Objekte wie in Deinem Code zugreifen.

Viele Grüße, tester!

Hallo,

achte auf eine saubere Deklaration der Variablen.

Dim t1
as Worksheet, t2 as Worksheet, t3 as Worksheet

Da es sich
hier um Objektvariablen handelt, müssen diese mit dem
einleitenden Code „SET“ festgelegt werden.

Set t1
=Workbooks(strMappeName1).Worksheets(„Blatt1“)

Dann kann
man über den Variablennamen auf die Objekte wie in Deinem Code
zugreifen.

Viele Grüße, tester!

Hi tester,
Danke für deine Super schnelle Antwort.
Das mit dem Set habe ich übersehen.
DANKE! das erspart mir jede Menge Codemüll.
mfg
Winter

Hallo Winterknight.

Kannst Du nicht einfach „ActiveSheet“ verwenden?

Viele Grüße
Carsten