Я использую пример из «Excel - как скопировать все листы из одной рабочей книги в другую», чтобы скопировать все листы из одной рабочей книги в другую. Макрос работает. Однако, если листы уже существуют в целевой книге. Я хочу заменить это. Прямо сейчас он копирует лист в цель с суффиксом "(1)". Как я могу проверить - если лист существует в целевом, удалите его, а затем скопируйте из источника.

Код VBA:

Sub CopyWS()
    Dim b1 As Workbook, b2 As Workbook
    Dim sh As Worksheet
    InputPath = Range("B1").Value
    InputFileName = Range("B2").Value
    OutputPath = Range("B3").Value
    OutputFileName = Range("B4").Value
    Workbooks.Open Filename:=OutputPath & OutputFileName
    Set b1 = ActiveWorkbook
    Workbooks.Open Filename:=InputPath & InputFileName
    Set b2 = ActiveWorkbook
    For Each sh In b2.Sheets
        sh.Copy after:=b1.Sheets(b1.Sheets.Count)
    Next sh
End Sub

0