Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1480to1484
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

Zelle aus eine Datei in andere Datei kopieren

Zelle aus eine Datei in andere Datei kopieren
07.03.2016 09:15:23
claudius
Hallo liebe Leute,
ich wuerde gerne aus der einer Excel Datei eine Zelle in eine andere kopieren koennen. Am liebsten per Macro. Kann mir da jemand bitte helfen.
Das hier ist das Makro das ich mir geschrieben habe, jedoch finde ich den Fehler nicht.
Sub Zeile_auslesen()
'** Dimensionierung der Variablen
Dim pfad As String, datei As String, blatt As String, zelle As String
'** Angaben zur auszulesenden Zelle
pfad = "C:\Users\claudius\Desktop\New folder"
datei = "book2.xlsm"
blatt = "Sheet1"
bezug = "A3"
'** Eintragen in Zelle
ActiveCell.Value = GetValue(C:\Users\claudius\Desktop, book1, Sheet1, A1)
End Sub

Laut dem debugger liegt der Fehler in dieser zeile:
ActiveCell.Value = GetValue(C:\Users\claudius\Desktop, book3, Sheet2, A1)
ware super wenn ihr mir helfen koenntet :)

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle aus eine Datei in andere Datei kopieren
07.03.2016 16:38:09
KlausF
hallo Claudius,
da fehlt Dir die Funktion GetValue dazu.
Private Function GetValue(path, file, sheet, ref)
'   Retrieves a value from a closed workbook
Dim arg As String
'   Make sure the file exists
If Right(path, 1)  Application.PathSeparator Then path = path & Application.PathSeparator
If Dir(path & file) = "" Then
GetValue = "File nicht gefunden"
Exit Function
End If
'   Create the argument
arg = "'" & path & "[" & file & "]" & sheet & "'!" & _
Range(ref).Range("A1").Address(, , xlR1C1)
'   Execute an XLM macro
GetValue = ExecuteExcel4Macro(arg)
End Function
Klappt's?
Gruß
Klaus

Anzeige
und noch etwas
07.03.2016 16:44:38
KlausF
die letzte Zeile lautet dann
ActiveCell.Value = GetValue(pfad, datei, blatt, bezug)
Gruß
Klaus

AW: Zelle aus eine Datei in andere Datei kopieren
07.03.2016 17:13:47
Daniel
Hi
auch wenn du die Funktion "GetValue" schon hättest, ist da noch folgender Fehler drin:
entweder du verwendest die Variablen, die du definiert hast, das wären:
- pfad
- Datei
- blatt
- bezug
ActiveCell.Value = GetValue(pfad, datei, blatt, bezug)
oder wenn du die Werte direkt angeben willst, musst du diese in Anführungszeichen setzen:
ActiveCell.Value = GetValue("C:\Users\claudius\Desktop", "book1.xlsm", "Sheet1", "A1")
prinzipell solltest du aber ohne die Funktion "GetValue" auskommen, in dem du einfach die Formel mit dem entsprechenden externen Zellbezug in die Zelle schreibst und hinterher die Formel durch ihren Wert ersetzt:
entweder direkt:
ActiveCell.Formula = "='C:\Users\claudius\Desktop\[book1.xlsm]Sheet1'!A1"
oder mit den Variablen:
ActiveCell.Formula = "='" & pfad & "\[" & datei & "]" & blatt & "'!" & bezug
um hinterher die Formel durch ihren Wert zu ersetzen nimmst du einfach:
ActiveCell.Formula = ActiveCell.Value
gruß Daniel

Anzeige
AW: Zelle aus eine Datei in andere Datei kopieren
08.03.2016 01:51:02
claudius
Lieber Daniel und lieber Klaus,
vielen dank fuer euere Hilfe, das klappt jetzt alles super und ich habs jetzt auch verstanden :)
Jetzt hab ich aber noch eine letzte Frage an euch, wie sage ich dem Macro, dass es den Wert, den es aus der Zelle im geschlossenen File geholt hat nicht in die angeklichte Zelle kopiert, sondern z.B. in A1.
Waere super wenn ihr mir dabei noch helfen koenntet.
Vielen Dank schon mal fuer euere Hilfe.
Gruss,
Claudius

Range("A1").Value
08.03.2016 13:43:29
KlausF
Hallo Claudius,
schreibe statt ActiveCell.Value = GetValue(pfad, datei, blatt, bezug)
Range("A1").Value = GetValue(pfad, datei, blatt, bezug)
Gruß
Klaus

Anzeige
AW: Zelle aus eine Datei in andere Datei kopieren
08.03.2016 01:51:34
claudius
Lieber Daniel und lieber Klaus,
vielen dank fuer euere Hilfe, das klappt jetzt alles super und ich habs jetzt auch verstanden :)
Jetzt hab ich aber noch eine letzte Frage an euch, wie sage ich dem Macro, dass es den Wert, den es aus der Zelle im geschlossenen File geholt hat nicht in die angeklichte Zelle kopiert, sondern z.B. in A1.
Waere super wenn ihr mir dabei noch helfen koenntet.
Vielen Dank schon mal fuer euere Hilfe.
Gruss,
Claudius

318 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige