ich habe ein Problem mit einem Makro. Habe mir ein Makro zusammengebastelt (mit vielen Sachen hier aus dem Forum ;) welches über einen Dateiauswahldialog eine Datei öffnet und dann aus verschiedenen Tabellenblättern Zellbereiche aus der geöffneten Datei in meine Datei kopiert. Dies funktioniert auch soweit tadellos bis auf eine Stelle im Makro. Ich habe schon mit verschiedenen Einstellungen herumexperimentiert aber das Makro bleibt immer an der selben Stelle hängen. Hier mal der Code:
DateiÖffnen()
MsgBox " Daten werden übernommen, bitte alte Datei auswählen und unbedingt auf Fertigmeldung warten !!!"
Application.DisplayAlerts = False
Dim Dateiauswahl As Variant, wkb As Workbook
erneut:
Dateiauswahl = Application.GetOpenFilename("Excel-Datein (*.xlsm), *.xlsm")
If Dateiauswahl False Then
'Grunddaten'
Set wkb = Workbooks.Open(Filename:=Dateiauswahl)
wkb.Sheets("Grund").Range("B1:C31").Copy
ThisWorkbook.Sheets("Grund").Range("B1").PasteSpecial Paste:=xlValues
wkb.Sheets("Grund").Range("c34:C53").Copy
ThisWorkbook.Sheets("Grund").Range("c34").PasteSpecial Paste:=xlValues
wkb.Sheets("Grund").Range("E2:Q11").Copy
ThisWorkbook.Sheets("Grund").Range("E2").PasteSpecial Paste:=xlValues
wkb.Sheets("Grund").Range("e17:f18").Copy
ThisWorkbook.Sheets("Grund").Range("e17").PasteSpecial Paste:=xlValues
wkb.Sheets("Grund").Range("k17:k18").Copy
ThisWorkbook.Sheets("Grund").Range("k17").PasteSpecial Paste:=xlValues
wkb.Sheets("Grund").Range("d25:d31").Copy
ThisWorkbook.Sheets("Grund").Range("D25").PasteSpecial Paste:=xlValues
wkb.Sheets("Grund").Range("e25:e31").Copy
ThisWorkbook.Sheets("Grund").Range("e25").PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
'STK'
wkb.Sheets("STK").Range("e10:f33").Copy
ThisWorkbook.Sheets("STK").Range("e10").PasteSpecial
wkb.Sheets("STK").Range("aa10:aa83").Copy
ThisWorkbook.Sheets("STK").Range("aa10").PasteSpecial
wkb.Sheets("STK").Range("D40:F40").Copy
'ThisWorkbook.Sheets("STK").Range("D40").PasteSpecial Transponse:=True
wkb.Sheets("STK").Range("D41:F41").Copy
'ThisWorkbook.Sheets("STK").Range("D41").PasteSpecial Transponse:=True
wkb.Sheets("STK").Range("D42:F42").Copy
'ThisWorkbook.Sheets("STK").Range("D42").PasteSpecial Transponse:=True
wkb.Sheets("STK").Range("D43:F43").Copy
'ThisWorkbook.Sheets("STK").Range("D43").PasteSpecial Transponse:=True
wkb.Sheets("STK").Range("D44:F44").Copy
'ThisWorkbook.Sheets("STK").Range("D44").PasteSpecial Transponse:=True
Application.DisplayAlerts = True
Sheets("Grund").Select
Range("B2").Select
End Sub
Der Fehler mit Makroabbruch kommt bei Tabellenblatt 'STK' genau 4-mal, habe diese 4 Zeilen mit ' nicht ausführbar gesetzt und der Befehl "PasteSpecial Transponse:=True" wurde von mir mit verschiedenen Möglichkeiten ausprobiert immer mit dem selben Fehler. Es sei noch erwähnt das nach dem Code mit dem Fehler noch mehrere Aktionen mit PasteSpecial folgen die wieder korrekt ausgeführt werden. Auch sind die Tabellenblätter vom Aufbau her identisch.
Bin völlig ratlos, hat jemand einen Lösungsansatz?
Vielen Dank, Maik