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

Fehler beim Kopieren - Makrofehler?

Fehler beim Kopieren - Makrofehler?
31.07.2007 08:44:15
Dicky
Moin Moin,
Ich habe folgendes Problem:
Ich lese Textdateien (Schnittstellendaten) aus einer Datei in Excel ein, Filtere daten und Kopiere diese in eine andere Exceltabelle. Je Datumstag gibt es eine Datei. Mein Makro funktioniert bei den ersten 6-7 Tagen einwandfrei, bricht aber jeweils am 7-8. Tag ab beim Einfügen in die 2. Tabelle mit der Fehlermeldung Laufzeitfehler 1004 - Bereich Kopieren und Einfügen haben unterschieldiche Größe.
Die Dateien sind jedoch identisch. Das Makro lautet wie folgt (sorry ist serh umständlich aufgebaut, bin kein Profi :(

Sub aufruf_Datei()
' aufruf_Datei Makro
' Makro am 12.07.2007 von B3 aufgezeichnet
Dim vondat As String
Dim bisdat As String
Dim Jahr As String
Dim N As Integer
Dim Zieldat As String
Dim i As Integer
Dim M As Integer
Range("c9").Select
vondat = Selection
'MsgBox (Selection)
Range("c11").Select
bisdat = Selection
Range("c6").Select
Jahr = Selection
Range("c9").Select
Selection.Copy
' kopieren des Felder von.... und erweitern auf alle Tage des Monats
Application.CutCopyMode = False
Selection.Copy
Sheets("Dateisel").Select
Range("C3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Selection.AutoFill Destination:=Range("C3:C33"), Type:=xlFillDefault
For i = 3 To 33
Zieldat = Sheets("Dateisel").Cells(i, 3)
If Dir("D:\Lange\" & 2007 & "\" & Zieldat & ".DIF")  "" Then
'öffnen der Schnittstellendatei
Workbooks.OpenText Filename:="D:\Lange\" & 2007 & "\" & Zieldat & ".DIF", Origin:= _
xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8,  _
1), _
Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1),  _
Array(15 _
, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array(21, 1) _
, _
Array(22, 1), Array(23, 1), Array(24, 1), Array(25, 1), Array(26, 1), Array(27, 1),  _
Array( _
28, 1), Array(29, 1), Array(30, 1), Array(31, 1), Array(32, 1), Array(33, 1), Array(34,  _
1), _
Array(35, 1), Array(36, 1), Array(37, 1), Array(38, 1), Array(39, 1), Array(40, 1),  _
Array( _
41, 1), Array(42, 1), Array(43, 1), Array(44, 1), Array(45, 1), Array(46, 1), Array(47,  _
1), _
Array(48, 1), Array(49, 1), Array(50, 1), Array(51, 1), Array(52, 1), Array(53, 1),  _
Array( _
54, 1), Array(55, 1), Array(56, 1), Array(57, 1), Array(58, 1), Array(59, 1), Array(60,  _
1), _
Array(61, 1), Array(62, 1), Array(63, 1), Array(64, 1), Array(65, 1), Array(66, 1),  _
Array( _
67, 1), Array(68, 1), Array(69, 1))
Cells.Select
Selection.AutoFilter
ActiveWindow.ScrollColumn = 16
Selection.AutoFilter Field:=25, Criteria1:="=26", Operator:=xlOr, _
Criteria2:="=52"
Rows("1:800").Copy
Selection.Copy
Windows("Uebernahme_Schnittstelle").Activate
Sheets("daten").Select   'fügt in die erste Zeile ein, in der im Feld a*
'nichts mehr steht
Range("a1").Activate
ActiveCell.End(xlDown).Select
Selection.Offset(1, 0).Activate
ActiveSheet.Paste 'hier kommt die Fehlermeldung
Windows(Zieldat & ".DIF").Activate
Application.CutCopyMode = False
ActiveWorkbook.Close SaveChanges:=False
GoTo weitermachen
End If
weitermachen:
Next i
End Sub


Danke für Eure Hilfe
Frank

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

Betreff
Datum
Anwender
Anzeige
AW: Fehler beim Kopieren - Makrofehler?
31.07.2007 09:29:36
Mag
Hi,
Range("a1").Activate
ActiveCell.End(xlDown).Select
Selection.Offset(1, 0).Activate
also, erst aktivierst du zelle a1, dann den Bereich a1:a65536, dann willst du die nächste zeile aktivieren - die es aber nicht gibt ...
mhhh ...

AW: Fehler beim Kopieren - Makrofehler?
31.07.2007 09:36:00
Dicky
Nein, Ich markiere den Bereich bis zur letzten gefüllten Zeile, da ich die Felder a1 und a2 vorab fülle, füge ich die Erste Datei mit Feld a3 ein, die zweite Tabelle beginnt nach dem letzten Feld von der ersten tabelle und so weiter

AW: Fehler beim Kopieren - Makrofehler?
31.07.2007 09:46:31
Mag
Hi,
nein, wenn du keine werte in der Spalte hast, oder nur den ersten wert belegt, dann hast du ein Problem, wie beschrieben. Versuche mal die 3 Zeilen zu ersetzen durch:
Cells(65536, 1).End(xlUp).Offset(1, 0).Select
Gruss

Anzeige
AW: vileleicht anderer Kopiermodus?
31.07.2007 10:56:00
Dicky
Daran liegt es nicht, kann es denn am Activesheet befehl liegen, da er jeweils 800 Zeilen einfügt, daß die Datei intern irgendwie voll ist? Wie gesagt, die ersten 7-8 Dateien werden ohne Probleme hineinkopiert, er steigt dann erst später aus nach der 7-8 Schleife

hat sich erledigt
31.07.2007 11:34:00
Dicky
Danke für die Hilfe,
der Fehler lag jedoch woanders. Ich hatte die Zeilen kopiert u n d gleichzeitig das gesamte vorher markierte Datenblatt. Damit war die Empfängertabelle einfach ziemlich schnell voll.
Aber die Lösung mit End(xlup)kann ich andererseits gut verwenden :))
Frank

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige