|  
                                             
	Hi Mackie, 
	bringt leider auch den gleichen Fehler... 
	Außerdem: habe den Fehler auch, wenn ich nur 1 Mappe B mit der Mappe A verknüpfe; und wäre keine optimale Lösung, da die Dateinamen variabel sind. 
	hier mal die Details: 
	Der Code zum Verknüpfen von mehreren Arbeitsmappen B in die Arbeitsmappe A: (Code ist in der Arbeitsmappe A, wird über Userform gestartet) 
	  
   Sub Verknüpfen() 
     ThisWorkbook.Unprotect Password:=""
  
    Dim i               As Long
    Dim j               As Long
    Dim k               As Long
    Dim l               As Long
    Dim sPfad           As String
    Dim sDatei          As String
    Dim sDateipfad      As String
    Dim oTargetBook     As Object
    Dim oSourceBook     As Object
    
    Set oTargetBook = ThisWorkbook
  
Application.ScreenUpdating = False 'Das "Flackern" ausstellen
    k = Projekte_Verknüpfen.ComboBox1.Value
    If Not k = "0" Then
    
    
    l = k
    
    
    Else
    
    l = 1
    k = 20
    
    
    End If
    
    
       
    For i = l To k
        
        sDatei = oTargetBook.Worksheets("Programmdeckblatt").Cells(54 + i, 2)
        sPfad = oTargetBook.Worksheets("Programmdeckblatt").Cells(54 + i, 1)
    sDateipfad = sPfad & sDatei
    
    If Not sDateipfad = "" Then
'XXXX HIER STOPPT DAS MAKRO / FEHLER / DEBUGGER BLEIBT HÄNGEN XXXX
    Set oSourceBook = Workbooks.Open(sDateipfad, False, False)
'XXXX HIER STOPPT DAS MAKRO / FEHLER / DEBUGGER BLEIBT HÄNGEN XXXX
    
    oSourceBook.Worksheets("Transfer").Rows("1:1").Copy
    
    oTargetBook.Worksheets("Verknuepfung").Activate
    oTargetBook.Worksheets("Verknuepfung").Cells(i, 1).Select
    ActiveSheet.Paste Link:=True
    
   
    oTargetBook.Worksheets("Programmdeckblatt").Range("G16").Copy
    
    With oSourceBook.Worksheets("Projektdeckblatt").Activate
    oSourceBook.Worksheets("Projektdeckblatt").Range("Y9").Select
    ActiveSheet.Paste Link:=True
    End With
    
    
    oTargetBook.Worksheets("Programmdeckblatt").Range("AQ23:AQ28").Copy
    
    With oSourceBook.Worksheets("Projektdeckblatt").Activate
    oSourceBook.Worksheets("Projektdeckblatt").Range("AP23:AP28").PasteSpecial xlPasteValues
    End With
    
    oTargetBook.Worksheets("Programmdeckblatt").Range("AQ30").Copy
    
    With oSourceBook.Worksheets("Projektdeckblatt").Activate
    oSourceBook.Worksheets("Projektdeckblatt").Range("AP30").PasteSpecial xlPasteValues
    End With
    
    
    oSourceBook.Worksheets("Projektdeckblatt").Range("A80").Value = ThisWorkbook.FullName
    oSourceBook.Worksheets("Projektdeckblatt").Range("A81").Value = ThisWorkbook.Name
    oSourceBook.Worksheets("Projektdeckblatt").Range("AA80").Value = oTargetBook.Worksheets("Programmdeckblatt").Range("AA80").Value
    oSourceBook.Worksheets("Projektdeckblatt").Range("AA81").Value = oTargetBook.Worksheets("Programmdeckblatt").Range("AA81").Value
    
    
    Application.CutCopyMode = False
    Workbooks(sDatei).Close True
    End If
    
    Next
   
   
   
    For j = 1 To 20
    
    If oTargetBook.Worksheets("Kalkulationen").Cells(149 + j, 2).Value > 0 Then
    oTargetBook.Worksheets("Kalkulationen").Rows(149 + j).Hidden = False
    Else
    oTargetBook.Worksheets("Kalkulationen").Rows(149 + j).Hidden = True
    End If
    
    Next
  
   
     oTargetBook.Worksheets("Programmdeckblatt").Activate
     
    If Err Then MsgBox Err.Description, , "Fehler: " & Err
    
Application.ScreenUpdating = True
ThisWorkbook.Protect Structure:=True, Windows:=False
     
End Sub
	  
	Da ich die eine Zeile oben, bei der der Fehler auftritt, nicht verändert habe, muss es an der dort aufgerufenen Datei liegen. 
	Also an der jeweiligen Arbeitsmappe B 
	Und durch auskommentieren, Haltepunkte und Msgbox habe ich den Fehler gefunden. Nur eben noch keine Lösung: 
	Hier das Startmakro und Closemakro von Arbeitsmappe B: (Code logischerweise in der Arbeitsmappe B) 
Private Sub Workbook_Open()
Application.ScreenUpdating = False
  
  ThisWorkbook.Unprotect Password:=""
    Dim myWorksheet As Worksheet
    For Each myWorksheet In ThisWorkbook.Worksheets
        myWorksheet.Protect Password:="", UserInterFaceOnly:=True
    Next
 
Call VerknüpfenMS_Start
Call Check_CMDButton
    ThisWorkbook.Protect Structure:=True, Windows:=False
 Application.ScreenUpdating = True
 
 Application.DisplayAlerts = False
 
End Sub
	 
	  
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  ThisWorkbook.Unprotect Password:=""
 Application.ScreenUpdating = False
 
Call VerknüpfenMS_Start
Call Check_CMDButton
  ThisWorkbook.Protect Password:=""
 Application.ScreenUpdating = True
End Sub
 
	Das hat davor schon problemlos funktioniert. Ich habe bloß die Zeile "Call Check_CMDButton" eingefügt. 
	Also hier noch das Makro "Check_CMDButton" (Code ebenfalls nur in der Arbeitsmappe B enthalten) 
	  
Sub Check_CMDButton()
    Dim wb As Object
    Set wb = ThisWorkbook
    
  wb.Unprotect Password:=""
  
'Commandbuttons färben
        If wb.Sheets("Projektdeckblatt").Range("A62").Value > 0 Then
            wb.Sheets("Projektdeckblatt").CommandButton2.BackColor = &HFF00&
        Else
            wb.Sheets("Projektdeckblatt").CommandButton2.BackColor = &H80FF&
        End If
    
        
        If wb.Sheets("Projektdeckblatt").Range("A80").Value > 0 Then
            wb.Sheets("Projektdeckblatt").CommandButton7.BackColor = &HFF00&
        Else
            wb.Sheets("Projektdeckblatt").CommandButton7.BackColor = &H80FF&
        End If
        
 
       If wb.Sheets("Projektdeckblatt").Range("AA80").Value > 0 Then
            wb.Sheets("Projektdeckblatt").CommandButton8.BackColor = &H80FFFF
        Else
            wb.Sheets("Projektdeckblatt").CommandButton8.BackColor = &H80FF&
        End If
        
        wb.Protect Structure:=True, Windows:=False
End Sub
	Vorher hatte ich noch "Thisworkbook" überall statt "wb" stehen. das brachte auch keinen Unterschied. 
	Mit dem richtigen Namen der Arbeitsmappe habe ich es auch schon  versucht -> gleiches Ergebnis. 
	Starte ich manuell Arbeitsmappe B, funktioniert es ; Verknüpfe ich Arbeitsmappe B mit Arbeitsmappe A kommt der Laufzeitfehler 
	Keine Ahnung was hier schief geht und warum es zu einem Fehler kommt, wenn ich Arbeitsmappe B über eine andere Exceldatei aufrufe. 
	Vor allem die Fehlermeldung "Laufzeitfehler 438 . Das Objekt unterstützt diese Eigenschaft oder Methode nicht" 
	Warum sollte es beim Verknüpfen die Eigenschaft nicht mehr unterstützen, wo es doch im Standalone funktioniert? (Also wenn die Datei manuell aufgerufen wird. 
	Ich schätze mir fehlen hier einfach die tieferen Kenntnisse... Habe mir das meiste selbst beigebracht ^^ 
	Danke schonmal 
	LG 
     |