Wenn dieses Sub über das Arbeitsblatt "SheetCTF" aufgerufen wird, dann funktioniert es. Wenn es über das Arbeitsblatt „sheetEXTRACTED“ genannt wird, dann werde ichVBA: Laufzeitfehler 1004 beim Aufruf aus einem anderen Arbeitsblatt?
„Laufzeitfehler 1004 - Methode‚Range‘des Objekts‚_Worksheet‘ist fehlgeschlagen“
Warum?
Public Const ctfHeadingRow As Long = 1
Public Const ctfLastRow As Long = 200
Sub SUB_copyCtfColsToExtracted(sourceCol As Long, destCol As Long)
sheetCTF.Range(Cells(ctfHeadingRow, sourceCol), Cells(ctfLastRow,sourceCol)).SpecialCells(xlCellTypeVisible).Copy _
Destination:=sheetEXTRACTED.Range(Cells(extractedFirstRow, destCol).Address)
End Sub
(Blatt in einem anderen Modul).
Wo stellst du 'extractedFirstRow' ein? Ist das eine öffentliche/globale Variable, die der Routine zur Verfügung steht? Sind die 'sheetEXTRACTED' und' sheetCTF' die tatsächlichen Blattnamen in VBE oder sind es die Tab-Namen? In diesem Fall benötigen Sie 'Worksheets (" sheetEXTRACTED ")' –
Sorry, ja 'extractedFirstRow' ist eine globale Variable in einem anderen Modul. Und ja, sie sind beide die tatsächlichen Blattnamen in einem anderen Modul. – Slab