Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
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
Aufruf Worksheets anderer Datei
31.05.2019 07:21:19
Barbara
Hallo
würde gerne etwas per VBA in ein Blatt einer anderen Datei schreiben.
Die Zieldatei soll der Anwender selbst wählen können, ebenso das Blatt.
Die Zieldatei soll auch die Endung xls oder xlsx haben können (also auch ältere Version).
Hier mein bestehendes Makro, in dem das Zielblatt schon vordefiniert ist, eben Tabelle4 im eigenen Workbook. Das soll nun geändert werden.
Sub test()
Dim rBereich    As Range
Dim wsAktuell   As Worksheet
Set wsAktuell = ActiveSheet
With Tabelle4
Set rBereich = .Range("A2:B5")
'Kopieren aus aktuellem Blatt
.Cells(2, 2) = wsAktuell.Cells(2, 2).Formula
End With
End Sub
Vielen Dank.
LG,
Barbara

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

Betreff
Datum
Anwender
Anzeige
AW: Aufruf Worksheets anderer Datei
31.05.2019 12:16:11
Torsten
Hallo Barbara,
das Auswaehlen der Datei koenntest du mit dem Datei Dialog machen. Z.B. so:

Sub test()
Dim Datei As Integer, i As Integer
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.AllowMultiSelect = False   'nur Auswahl einer Datei moeglich
.Filters.Add "Excel Files", "*.xlsx; *.xlsm; *.xls; *.xlsb", 1      'Filter, welche  _
Dateiformate moeglich
.InitialFileName = "C:\Temp\"       'hier kannst du den Pfad und Ordner vorgeben, der  _
im Dialog angezeigt wird
End With
Datei = fd.Show
If Datei = -1 Then
For i = 1 To fd.SelectedItems.Count
Workbooks.Open fd.SelectedItems(i)
Next i
End If
End Sub
Die Auswahl des Blatts koennte man dann ueber eine Userform machen mit einer Combobox z.B., in die nach dem Oeffnen der Datei die Blattnamen eingelesen werden und der Benutzer dort dann das Blatt auswaehlen kann und direkt dort hinkommt. Oder ist der Bereich, der kopiert werden soll immer der gleiche?
Gruss Torsten
Anzeige
AW: Aufruf Worksheets anderer Datei
01.06.2019 23:53:45
Barbara
Hi Torsten,
danke für Dein Beispiel.
Könntest Du, oder wer auch immer will, auch noch zeigen, wie man dann diese Datei anspricht?
Am Besten mit einem Beispiel, wie zB:
Es soll in dieser gewählten Datei hinten ein neues Blatt angelegt werden und der ActiveSheet.usedrange dorthin kopiert werden.
LG,
Barbara
AW: Aufruf Worksheets anderer Datei
02.06.2019 08:34:02
fcs
Hallo Babara,
etwa so:

Sub test()
Dim rngCopy As Range
Dim fd As FileDialog
Dim wkbZiel As Workbook, wksZiel As Worksheet
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.AllowMultiSelect = False   'nur Auswahl einer Datei moeglich
.Filters.Add "Excel Files", "*.xlsx; *.xlsm; *.xls; *.xlsb", 1     'Filter, welche _
Dateiformate moeglich
.InitialFileName = "C:\Users\Public\Documents\"       'hier kannst du den Pfad _
und Ordner vorgeben, der im Dialog angezeigt wird
If .Show = -1 Then
Set rngCopy = ActiveSheet.UsedRange
Set wkbZiel = Application.Workbooks.Open(Filename:=.SelectedItems(1))
With wkbZiel
Set wksZiel = .Worksheets.Add(after:=.Sheets(.Sheets.Count))
End With
rngCopy.Copy
With wksZiel.Range(rngCopy.Address)
.PasteSpecial Paste:=xlPasteColumnWidths
.PasteSpecial Paste:=xlPasteAll
End With
Application.CutCopyMode = False
End If
.Filters.Delete 1
End With
End Sub

LG
Franz
Anzeige
AW: Aufruf Worksheets anderer Datei
06.06.2019 11:08:58
Barbara
Hallo,
Torsten und Franz,
vielen Dank für Eure ausführliches Beispiele.
Alles funktioniert. Ihr habt mir sehr geholfen.
LG,
Barbara

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige