ich möchte über einen cmdButton (erstes xls / sheets1)ein zweites xls öffnen (mit FileDialogOpen), und daraus später einzelne Spalten in das erste xls (sheets2)kopieren
bis vor einer Stunde ging es holprig bis kurz vor dem markieren(range/select), das funktioniert auch nicht. Leider habe ich den Fehler dazu noch nicht rausgefunden.
Bei der Zeile dn= .SelectedItems(1) gibt er mir immer wieder einen Laufzeitfehler aus.(meist '1004 / nachdem ich den Schreibschutz über Eigenschaften vom xls aufgehoben haben, kommt nun '5 / auch noch nachdem ich die Einstellung wieder rückgängig gemacht habe)
Frage: was habe ich bei meiner Zuordnung "dn" falsch gemacht?
warum muss ich .execute ausführen, obwohl .show angegeben wird?
wie kann ich das geöffnete xls markieren?
Danke im Voraus, bei jedem der es sich mal ansieht.
VG Ruth
https://www.herber.de/bbs/user/105536.xlsm
Option Explicit
Private Sub cmdWacker_Click()
Dim wkbUA As Workbook 'Ultimo Abstimmung
Dim wksUA As Worksheet 'Ultimo Abstimmung
Dim wkbAVS As Workbook 'Daten von AVS
Dim wksAVS As Worksheet 'Daten von AVS
Dim dn As String 'DateiName - der geöffnet werden soll
Set wkbUA = ActiveWorkbook
Set wksUA = wkbUA.Sheets(2)
Const pfad As String = ("C:\Users\Mummy\Documents\Wacker\") 'konstanter pfad um wacker avs zu ö _
ffnen
With Application.FileDialog(msoFileDialogOpen)
.Title = "Bitte wählen Sie die Wacker Datei von AVS aus:"
.InitialFileName = pfad & "*.xls*"
dn = .SelectedItems(1)
If .Show = -1 Then
.Execute
End If
End With
Set wksAVS = ActiveWorkbook.Worksheets(1)
'Application.Workbooks.Open(Filename:=dn).Activate
'ActiveWorkbook.Worksheets(1) = wksAVS
Workbooks.Open(Filename:=dn, ReadOnly:=False).Activate
'Range(1, 1).Select
'wksAVS.Range("A1:B5").Delete
End Sub