Метод .ExportAsFixedFormat
не поддерживает экспорт в форматы файлов Excel согласно документации
Действие, которое вы, скорее всего, ищете, - .move
. Если не указано, куда перемещать, будет создана новая рабочая книга с перемещенным листом. Затем вы можете использовать workbooks(Workbooks.count)
для доступа к последней созданной книге. См. Пример кода ниже:
Dim wb As Workbook
ActiveSheet.Move
Set wb = Workbooks(Workbooks.Count)
wb.SaveAs Filename:="yournamehere", FileFormat:=xlOpenXMLWorkbookMacroEnabled 'etc...
Обратите внимание, что при выполнении этого действия с последним оставшимся или единственным листом в рабочей книге это приведет к ошибке. Для получения дополнительной информации о .move
методе см. Ссылку. О форматах файлов для использования см. Здесь .
Кроме того, при перемещении листа весь код VBA на листе будет перетягиваться, а модули, связанные с книгой, - нет. Поэтому попытка сохранить его как что-либо, кроме xlsm, когда на нем есть какой-либо код, приведет к появлению приглашения или ошибки.