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

Variable benennen?

Variable benennen?
15.05.2003 16:10:33
Ralf
Hallo,

ich schon wieder ;-) Habe mein gefährliches Halbwissen hier in den letzten Tagen gewaltig erweitern können, habe aber schon wieder eine Frage. Und zwar liegt das Worksheet "Kunden" im moment (zu Testzwecken) in der Datei wo auch mein Makro läuft, also sieht die Variable WS3 so aus:
Set WS3 = Worksheets("Kunden")
Nun möchte ich aber diesen Worksheet in eine eigene Datei ausgliedern, also eine Kunden.xls, wie muß ich dann die Variable definieren damit Excel die Tabelle findet?

Gruß, Ralf

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Variable benennen?
15.05.2003 16:22:58
ChrisL
Hallo Ralf

sowas in der Art...

Gruss
Chris

Re: Variable benennen?
15.05.2003 16:31:12
Ralf
haut irgendwie nicht so richtig hin, ich kopier dir mal die ganze Makro rein, vielleicht findest Du den Fehler

Sub Copy_Item_User()
Dim WS1 As Worksheet, WS2 As Worksheet, WS3 As Worksheet
Set WS1 = Worksheets("Verkauft")
Set WS2 = Worksheets("Übernahme")
Set WS3 = Workbooks("Kunden.xls").Worksheets("Kunden")
With WS1.[a65536].End(xlUp)
.Offset(1, 0) = WS2.[d23]
.Offset(1, 1) = WS2.[e23]
.Offset(1, 2) = WS2.[d20]
.Offset(1, 3) = WS2.[d26]
.Offset(1, 7) = WS2.[d2]
End With
With WS3.[a65536].End(xlUp)
.Offset(1, 0) = .Offset(0, 0) + 1
.Offset(1, 1) = WS2.[d2]
.Offset(1, 2) = WS2.[d5]
.Offset(1, 3) = WS2.[d8]
.Offset(1, 4) = WS2.[d11]
.Offset(1, 5) = WS2.[d14]
.Offset(1, 6) = WS2.[d17]
End With

Als Fehler meldet er Laufzeitfehler 9 Index außerhalb des gültigen Bereichs

Anzeige
Re: Variable benennen?
15.05.2003 17:01:42
ChrisL
Hallo Ralf

Habe es jetzt nicht ausgiebig getestet, aber ich würde es ohne Offset machen.

Gruss
Chris

Immer noch ein Fehler
15.05.2003 17:38:12
Ralf
Hi Chris,

danke für Deine schnelle Hilfe, habe das Makro gerade entsprechend erweitert und bei mir getestet, rennt aber immer noch aufn Hammer. ,-(

in der Schleife With WS1 bei:

LetzteZeile = .[a65536].End(xlUp)

sagt er: Laufzeitfehler 6 Überlauf

Hast Du ne Ahnung was das sein könnte?

Gruß, Ralf

Re: Immer noch ein Fehler
15.05.2003 17:40:53
ChrisL
Hi Ralf

Hast du die Variable wie vorgeschlagen als Long deklariert?

Gruss
Chris

Re: Immer noch ein Fehler
15.05.2003 17:41:24
ChrisL
uuuups... habs gerade gesehen.

LetzteZeile = .[a65536].End(xlUp).Row

Gruss
Chris

Anzeige
Re: Immer noch ein Fehler
15.05.2003 18:34:44
Ralf
Hi Chris,

also die Fehlermeldung ist jetzt weg, meckert nur noch wenn die andere Tabelle nicht geöffnet ist, aber damit kann ich leben. Allerdings schreibt er mir die Daten immer noch nicht in die andere Datei rein. Der erste Teil des Makros wo er den Satz auf ein anderes Tabellenblat in der gleichen Datei schreiben soll funktioniert.
Hier nochmal der ganze Code:

Sub Copy_Item_User()
Dim WS1 As Worksheet, WS2 As Worksheet, WS3 As Worksheet
Dim LetzteZeile As Long
Set WS1 = Worksheets("Verkauft")
Set WS2 = Worksheets("Übernahme")
Set WS3 = Workbooks("Kunden.xls").Worksheets("Kunden")

With WS1
LetzteZeile = .[a65536].End(xlUp).Row
.Cells(LetzteZeile, 1) = WS2.[d23]
.Cells(LetzteZeile, 2) = WS2.[e23]
.Cells(LetzteZeile, 3) = WS2.[d20]
.Cells(LetzteZeile, 4) = WS2.[d26]
.Cells(LetzteZeile, 8) = WS2.[d2]
End With

With WS3
LetzteZeile = .[a65536].End(xlUp).Row + 1
Cells(LetzteZeile, 2) = WS2.[d2]
Cells(LetzteZeile, 3) = WS2.[d5]
Cells(LetzteZeile, 3) = WS2.[d8]
Cells(LetzteZeile, 3) = WS2.[d11]
Cells(LetzteZeile, 3) = WS2.[d14]
Cells(LetzteZeile, 3) = WS2.[d17]
End With
End Sub

Weißt Du woran es liegen könnte?

Gruß, ralf

Anzeige
Re: Immer noch ein Fehler
15.05.2003 19:28:16
ChrisL
Hallo Ralf

Sorry, da habe ich noch was kleines aber entscheidendes vergessen... den Punkt vor Cells.

So müsste es hinhauen.

Gruss
Chris

Re: Immer noch ein Fehler
15.05.2003 21:24:37
Ralf
Hi Chris,

hatte mich schon gewundert, warum da keine Punkte sind, ist ja schließlich ein und dieselbe Funktion. Aber jetzt rennt es. Einen Fehler habe ich selber noch gefunden. Im ersten Part hattest Du ein + 1 vergessen, dadurch hat er nicht in eine neue Zeile geschrieben sondern immer die letzte überschrieben, aber das war nur in einer Testdatei, habe dadurch keine Daten verloren. Was solls, es geht und das ist das wichtigste. ;-)
viele Dank nochmal und bis bald mal wieder....

Ciao, Ralf

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige