title image


Smiley Re: Syntax Frage
Hallo Kai,es ist nicht leicht, auf eine Variante ohne Select und Activate umzusteigen, aber es lohnt sich.Vielleicht erstmal etwas Grundsätzliches:Objekte, Eigenschaften und MethodenDu hast vor, objektorientiert zu programmieren. Dazu muß man wissen, was in Excel Objekte sind: Mappen, Tabellen, Spalten, Zeilen, Zellen, Userformen, usw.Jedes Objekt hat Eigenschaften, das heißt, man kann die Frage stellen: Wie ist es? Im Vergleich zu einem Auto kann man also fragen: Wie ist die Farbe des Autos?Jedem Objekt stehen aber auch Methoden zur Verfügung. Dann kann man die Frage stellen: Was soll damit geschehen. Beim Auto wäre das: Was soll das Auto machen?SyntaxWenn man Objekte mit deren Methoden und Eigenschaften verbinden möchte, geschieht dies grundsätzlich erstmal mit einem Punkt. Dabei wird zuerst das Objekt geschrieben, dann der Punkt und dann die Methode/Eigenschaft. Beispiel:Auto.Fahre (Methode)oderAuto.Farbe (Eigenschaft)Objekt und "Unterobjekt"Viele Objekte können aus weiteren bestehen. Wenn man von einem Objekt auf ein Unterobjekt eines anderen Objektes zugreifen möchte, muß man immer zuerst das übergeordnete Objekt und dahinter mit einem Punkt das untergeordnete Objekt schreiben.Beispiel:Ein Auto hat ein Schloß. Wenn Du den Schlüssel reinsteckst, würde man schreiben:Schloß.ÖffnenWenn Du aber in einem anderen Auto sitzt und von dort aus Dein Auto mit einer Fernbedienung öffnen möchtest, müßtest Du schreiben:MeinAuto.Schloß.ÖffnenSchließlich stehst Du ja in dem Moment nicht an Deinem Auto und mußt deshalb sagen, welches Autoschloß geöffnet werden soll.Besonderheit bei den EigenschaftenDu siehst, der Punkt spielt immer eine zentrale Rolle. Bei den Eigenschaften kommt noch das Gleichheitszeichen hinzu. Du nennst das Objekt, danach hinter einem Punkt die Eigenschaft und dann nach einem Gleichheitszeichen, wie die Eigenschaft sein soll.Beispiel:Auto.Farbe = RotSoweit zu den Erläuterungen, nun zu Deinem Beispiel.Dein BeispielSo habe ich Dich verstanden: Du hast zwei Mappen offen und möchtest in der aktiven Mappe auf dem Blatt Eplan6 den Text in der ersten Zeile auf 90° setzen. Dann soll auf Tabelle1 A1 kopiert werden, in der Datei eplan6.dbf auf dem Blatt Eplan6 auch der Text gedreht und anschließend auf Tabelle2 eingefügt werden. Mit dem Letzten kam ich nicht so ganz klar - befindet sich Tabelle2 in der aktiven Mappe oder in der dbf-Datei? Eigentlich besteht eine dbf ja nur aus einem Blatt. Da müßtest Du Dich vielleicht klarer ausdrücken.Also fangen wir an:Zuerst drehen wir in der aktiven Mappe auf dem Blatt Eplan6 den Text:Worksheets("Eplan6").Rows("1:1").Orientation = 90Dann drehen wir in der dbf den Text:Workbooks("eplan6.dbf").Worksheets("Eplan6").Rows("1:1").Orientation = 90Und jetzt sagen wir, daß er A1 von der Tabelle1 in die dbf in die Tabelle2 in A1 kopieren soll:Sheets("Tabelle1").[A1].Copy Workbooks("eplan6.dbf").Worksheets("Tabelle2").[A1]Wie geschrieben, ich glaube nicht, daß Du beim Einfügen die dbf meinst, dann laß einfach Workbooks("eplan6.dbf"). weg.Und hier nochmal das gesamte Makro:Worksheets("Eplan6").Rows("1:1").Orientation = 90Workbooks("eplan6.dbf").Worksheets("Eplan6").Rows("1:1").Orientation = 90Sheets("Tabelle1").[A1].Copy Workbooks("eplan6.dbf").Worksheets("Tabelle2").[A1]Umschrieben nochmal:1. Auf dem Blatt Eplan6 soll die erste Zeile die Orientation 90 haben.2. In der Mappe eplan6.dbf soll auf dem Blatt Eplan6 die Zeile1 die Orientation 90 haben.3. Blatt Tabelle1, Zelle A1 der aktiven Mappe soll kopiert werden, und zwar nach Mappe eplan6.dbf, Blatt Tabelle2, A1.Eins kanst Du dabei vielleicht noch beachten:Wenn Du Worksheet schreibst, werden nur die Tabellenblätter angesprochen, mit Sheet alle Blätter, also ggf. auch Diagramme.Viel Spaß und viel Erfolg und einen schönen dritten AdventJörgGlandorf 2000 - Das Excel-TreffenFragen im Forum, aber wie? - Info's!Fragen zu Excel, Access oder Word?EWAF-FAQ-Seiten und www.joerglorenz.de durchsuchen:Code eingefügt mit CodezuHTML von Jörg Lorenz (Menü kleine Helferlein)


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: