Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Daten aus Excel-Datei in andere Excel-Datei
19.08.2014 13:27:32
FAFR
Hallo,
ich habe zwei Excel-Dateien und möchte nun nachdem eine Checkbox aktiviert und der Button Fertig gedrückt wurde die Daten von der einen Excel-Datei (die im Hintergrund geöffnet wird und ohne zu speicher wieder geschlossen wird) in die aktuelle Excel-Datei übernehmen.
Mein Code dafür ist wie folgt:

Private Sub ButtonFertig_Click()
Dim appExcel As Object
Dim doc As Object
If UserForm1.CheckBox2.Value = True Then
Set appExcel = CreateObject("Excel.Application")
Set doc = appExcel.Workbooks.Add("G:\Technische Bauteilspezifikation\Technische  _
Spezifikation.xlsx")
doc.Unprotect
doc.Sheets("Tabelle1").Range("D5").Copy
ThisWorkbook.Sheets("Input").Range("G12").Paste
doc.Sheets("Tabelle1").Range("E5").Copy
ThisWorkbook.Sheets("Input").Range("H12").Paste
doc.Sheets("Tabelle1").Range("F5").Copy
ThisWorkbook.Sheets("Input").Range("I12").Paste
doc.Sheets("Tabelle1").Range("G5").Copy
Workbook.Sheets("Input").Range("J12").Paste
doc.Protect wdNoProtection
doc.Close savechanges:=False
Set appWord = Nothing
Set doc = Nothing
End If
End Sub

Leider funktioniert es nicht und bei der Fett hinterlegten Codezeile kommt der Laufzeitfehler 438 "Objekt unterstützt diese Eigenschaft oder Methode nicht"
Kann mir jemand helfen?
Danke
Gruß
Franzi

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten aus Excel-Datei in andere Excel-Datei
19.08.2014 14:20:55
fcs
Hallo Franzi,
für ein Makro, das in einer Exceldatei angelegt wird, ist es nicht erforderlich, ein Excel-Application-Objekt zu erzeugen.
Du hast scheinbar ein Wordbeispiel versucht nach Excel zu übertragen.
Die Paste-Methode funktioniert im Zusammenhang mit Zellen in Excel nicht. Entweder kopierts du direkt in die Zielzelle(n) oder du wendest bei den Zielzelle(n) die PasteSpecial-Methode an.
Gruß
Franz
Nachfolgend ein paar Beispiele, wie du dein Makro aufbauen könntest. Ich hab es aber nicht getestet.
' Makro innerhalb der Excel-Anwendung
Private Sub ButtonFertig_Click()
Dim doc As Workbook
If UserForm1.CheckBox2.Value = True Then
Set doc = Application.Workbooks.Add _
("G:\Technische Bauteilspezifikation\Technische Spezifikation.xlsx")
doc.Unprotect
doc.Sheets("Tabelle1").Range("D5").Copy ThisWorkbook.Sheets("Input").Range("G12")
doc.Sheets("Tabelle1").Range("E5").Copy ThisWorkbook.Sheets("Input").Range("H12")
doc.Sheets("Tabelle1").Range("F5").Copy ThisWorkbook.Sheets("Input").Range("I12")
doc.Sheets("Tabelle1").Range("G5").Copy ThisWorkbook.Sheets("Input").Range("J12")
doc.Protect ""
doc.Close savechanges:=False
Set doc = Nothing
End If
End Sub
'zu kopierender Bereich kann als ein Block kopiert werden
Private Sub ButtonFertig_Click()
Dim doc As Workbook
If UserForm1.CheckBox2.Value = True Then
Set doc = Application.Workbooks.Add _
("G:\Technische Bauteilspezifikation\Technische Spezifikation.xlsx")
doc.Unprotect
doc.Sheets("Tabelle1").Range("D5:G5").Copy ThisWorkbook.Sheets("Input").Range("G12:J12")
doc.Protect ""
doc.Close savechanges:=False
Set doc = Nothing
End If
End Sub
'Nur die Werte des zu kopierenden Bereichs werden in denZielzellen eingetragen
Private Sub ButtonFertig_Click()
Dim doc As Workbook
If UserForm1.CheckBox2.Value = True Then
Set doc = Application.Workbooks.Add _
("G:\Technische Bauteilspezifikation\Technische Spezifikation.xlsx")
doc.Unprotect
doc.Sheets("Tabelle1").Range("D5:G5").Copy
ThisWorkbook.Sheets("Input").Range("G12:J12").Pastespecial Paste:=xlPasteValues
doc.Protect ""
doc.Close savechanges:=False
Set doc = Nothing
End If
End Sub

Anzeige
AW: Daten aus Excel-Datei in andere Excel-Datei
19.08.2014 15:38:43
FAFR
Hallo Franz
Danke! Hab den Code umgeschrieben funktioniert super (:
Gruß Franzi

322 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige