Registriert seit: 02.08.2019
Version(en): 2010
Hallo zusammen,
Ich habe eine Datei „A“ in der ich eine leere Tabelle habe.
In der zweiten Datei „B“ stehen verschiedne Informationen.
Jetzt würde ich gerne aus der Datei „B“ zb die Zelle „B2“ kopieren/auslesen und
In meine Datei „A“ in die Zeile „F8“ einfügen, ohne die Datei „B“ vorher geöffnet zu haben.
Irgendwie klappt das nicht so ganz, könnt ihr mir helfen?
Gruß,
Aidan
00202
Nicht registrierter Gast
Hallo, :19:
Code in Datei "
A" und
Anpassungen noch
vornehmen! :21:
Code:
Option Explicit
Const strSheetQ As String = "Tabelle1" ' DIE Tabelle wird ausgelesen"
Const strSheetZ As String = "Tabelle1" ' Die Tabelle in DIESER Datei
Const strRangeQ As String = "B2" ' Der Quellbereich wird ausgelesen
Const strRangeZ As String = "F8" ' Der Zielbereich
Const strFile As String = "C:\Temp\TestDatei.xls" ' Pfad und Datei
Public Sub Main()
With ThisWorkbook.Worksheets(strSheetZ)
.Range(strRangeZ).Formula = "='" & Mid(strFile, 1, _
InStrRev(strFile, "\")) & "[" & _
Mid(strFile, InStrRev(strFile, _
"\") + 1) & "]" & _
strSheetQ & "'!" & strRangeQ
.Range(strRangeZ).Value = .Range(strRangeZ).Value
End With
End Sub
Registriert seit: 17.04.2019
Version(en): M$ 365 AfE v2009 / Office2013
14.08.2019, 12:11
(Dieser Beitrag wurde zuletzt bearbeitet: 14.08.2019, 12:12 von Mase.)
Hi,
noch n Vosrchlag:
Code:
Option Explicit
Sub CopyA()
Dim wkbQuelle As Workbook 'Datei B
Dim wkbZiel As Workbook 'Datei A
Dim wksQuelle As Worksheet 'Arbeitsblatt in Datei B
Dim wksZiel As Worksheet 'Arbeitsblatt in Datei A
Dim sQuellDatei As String
'
On Error GoTo err
'
sQuellDatei = "C:\Test\testdatei.xlsx" '<-- anpassen; muss vorhanden sein
Set wkbZiel = ThisWorkbook
Set wksZiel = wkbZiel.Worksheets.Add(after:=wkbZiel.Worksheets.Count)
Set wkbQuelle = Workbooks.Open(sQuellDatei)
Set wksQuelle = wkbQuelle.Worksheets("Tabelle1") '<-- anpassen, Blattname muss vorhanden sein
'
wksZiel.Range("F8").Value2 = wksQuelle.Range("B2").Value2 'lese Datei B, Zelle B2 und schreibe in Datei A Zelle F8
'
wkbQuelle.Close False
err:
If err.Number <> 0 Then
MsgBox err.Number & vbCrLf & err.Description
End If
Set wksZiel = Nothing: Set wksQuelle = Nothing: Set wksQuelle = Nothing: Set wkbZiel = Nothing
End Sub