Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1384to1388
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
Inhaltsverzeichnis

Laufzeitfehler 1004 bei PasteSpecial

Laufzeitfehler 1004 bei PasteSpecial
21.10.2014 14:23:50
Colin
Hey ihr VBA-Experten,
vor zwei Tagen habe ich mit VBA-Programmierung angefangen und einiges läuft auch bereits, ich bekomme jedoche eine Fehlermeldung nicht raus. Der folgende Code soll 31 Zellen ("D1:D31") von dem Reiter "Dropdown" einer Datei (quelle) in den Reiter "Dropdown" einer anderen Datei (ziel) an diesselbe Stelle ("D1:D31") kopieren. Dabei soll er wie üblich die Quell-Datei im Hintergrund öffnen, den Reiter sichtbar machen, Schreibschutz raus und alles am Ende wieder rein.
Der Code geht auch immer ein mal; jedoch, sobald er durchgeführt ist und nochmal durchgeführ wird, gibt es einen Laufzeitfehler 1004, der sagt, dass die PasteSpecial-Methode auf dem Range-Objekt nicht ausgeführt werden kann. Wenn ich die Option Exclicit aktiviere, schlägt sie auch an, sag mir aber nocht, wo.
Bitte helft mir, ich verzweifle daran!
Sub LK_BF_aktualisieren()
'Option Explicit
Dim i As Integer, k As Integer, quelle As String, quellenname As String, zielname As String
Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
zielname = ThisWorkbook.Name
quelle = fs.GetParentFolderName(ThisWorkbook.Path) & "\WVT-DVT-Tracking_Übersicht.xlsm"
Application.ScreenUpdating = False
'Funktionierender Ent-formatierungs-Code (fehlt hier)
Workbooks.Open Filename:=quelle
quellenname = ActiveWorkbook.Name
Sheets("Dropdown").Visible = True 'Target-file (no enabling needed as the file is not saved)
Sheets("Dropdown").Select
ActiveSheet.Unprotect "0815"
Range("D1:D31").Select
Selection.Copy
Windows(zielname).Activate
Sheets("Dropdown").Visible = True 'Source-file
Sheets("Dropdown").Select
ActiveSheet.Unprotect "0815"
Range("D1:D31").Select
Selection.PasteSpecial Paste:=xlPasteValues
Range("D32").Select
k = Range("D32").Value 'Anzahl BF für Schleife
ActiveSheet.Protect "0815"
Sheets("Dropdown").Visible = xlVeryHidden 'Source-file
Workbooks(quellenname).Close SaveChanges:=False
'Funktionierender Re-formatierungs-Code (fehlt hier)
ActiveSheet.Protect "0815"
Application.ScreenUpdating = True
Application.CutCopyMode = False
End Sub
Danke! :)

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 1004 bei PasteSpecial
21.10.2014 15:05:53
Hajo_Zi
Select, Activate usw. ist in VBA zu 99,9% nicht notwendig.
Der Cursor ist kein Hund der überall rumgeführt werden muss.
Hinweise zu select usw. Hajo-Excel.de
Hinweise zu select usw. Online-Excel.de
Hinweise zu select usw. Online-Excel.de
Option Explicit
Sub LK_BF_aktualisieren()
'Option Explicit
Dim i As Integer, k As Integer, quelle As String, quellenname As String, zielname As String
Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
zielname = ThisWorkbook.Name
quelle = fs.GetParentFolderName(ThisWorkbook.Path) & "\WVT-DVT-Tracking_Übersicht.xlsm"
Application.ScreenUpdating = False
'Funktionierender Ent-formatierungs-Code (fehlt hier)
Workbooks.Open Filename:=quelle
Sheets("Dropdown").Visible = True 'Target-file (no enabling needed as the file is not saved) _
Sheets("Dropdown").Unprotect "0815"
With Workbooks(zielname).Sheets("Dropdown")
Range("D1:D31").Copy
.Visible = True 'Source-file
.Unprotect "0815"
.Range("D1:D31").PasteSpecial Paste:=xlPasteValues
k = Range("D32").Value 'Anzahl BF für Schleife
.Protect "0815"
.Visible = xlVeryHidden 'Source-file
ActiveWorkbook.Close SaveChanges:=False
End With
'Funktionierender Re-formatierungs-Code (fehlt hier)
Application.ScreenUpdating = True
Application.CutCopyMode = False
End Sub

Anzeige
AW: Laufzeitfehler 1004 bei PasteSpecial
21.10.2014 18:41:02
Colin
Leider ist das Problem auch bei dem Code dasselbe; beim 2. Mal kommt der Fehler...

AW: Laufzeitfehler 1004 bei PasteSpecial
22.10.2014 10:47:10
UweD
Hallo
ich hab es mal umgebaut...
die beiden .visible= xx können sogar noch weggelassen werden
Sub LK_BF_aktualisieren()
Dim k As Integer, Quelle As String
Dim WBQ
Quelle = ThisWorkbook.Path & "\WVT-DVT-Tracking_Übersicht.xlsm"
Application.ScreenUpdating = False
Workbooks.Open Filename:=Quelle
Set WBQ = ActiveWorkbook
With ThisWorkbook.Sheets("Dropdown") 'Ziel
.Visible = True
.Unprotect "0815"
WBQ.Sheets("Dropdown").Range("D1:D31").Copy
.Range("D1:D31").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
k = WBQ.Sheets("Dropdown").Range("D32").Value 'Anzahl BF für Schleife
.Protect "0815"
.Visible = xlVeryHidden
WBQ.Close SaveChanges:=False
End With
Application.ScreenUpdating = True
End Sub
Gruß UweD

Anzeige
AW: Laufzeitfehler 1004 bei PasteSpecial
22.10.2014 11:59:11
Colin
Danke, so geht es! :)))

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige