Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Для создания макроса VBA, который будет копировать лист, преобразуя формулы в значения и сохраняя новый файл с указанием имени в ячейке H1, вам понадобится следующий код:Нужен макрос vba, копирующий лист [имя листа] превращая все формулы в значения, пусть сохранения нового файла указан в ячейке H1
Sub КопированиеЛистаСохранениеВЗначениях()
Dim НовыйЛист As Worksheet
Dim НовыйФайл As Workbook
Dim ИмяФайла As String
' Копирование листа
ThisWorkbook.Sheets("Имя листа").Copy
Set НовыйЛист = ActiveSheet
' Преобразование формул в значения
НовыйЛист.UsedRange.Value = НовыйЛист.UsedRange.Value
' Получение имени файла из ячейки H1
ИмяФайла = ThisWorkbook.Sheets("Имя листа").Range("H1").Value
' Сохранение нового файла
Set НовыйФайл = Workbooks.Add
НовыйЛист.Copy Before:=НовыйФайл.Sheets(1)
Application.DisplayAlerts = False
НовыйФайл.SaveAs ИмяФайла
НовыйФайл.Close SaveChanges:=True
Application.DisplayAlerts = True
' Очистка памяти
Set НовыйЛист = Nothing
Set НовыйФайл = Nothing
End Sub
Для того чтобы в новом файле удалялись макросы, вам нужно добавить дополнительный код в ваш макрос. Вот обновленный код:и добавь, чтобы в новом файле удалялись макросы
Sub КопированиеЛистаСохранениеВЗначениях()
Dim НовыйЛист As Worksheet
Dim НовыйФайл As Workbook
Dim ИмяФайла As String
' Копирование листа
ThisWorkbook.Sheets("Имя листа").Copy
Set НовыйЛист = ActiveSheet
' Преобразование формул в значения
НовыйЛист.UsedRange.Value = НовыйЛист.UsedRange.Value
' Получение имени файла из ячейки H1
ИмяФайла = ThisWorkbook.Sheets("Имя листа").Range("H1").Value
' Сохранение нового файла
Set НовыйФайл = Workbooks.Add
НовыйЛист.Copy Before:=НовыйФайл.Sheets(1)
Application.DisplayAlerts = False
НовыйФайл.SaveAs ИмяФайла
НовыйФайл.Close SaveChanges:=True
Application.DisplayAlerts = True
' Удаление макросов из нового файла
Dim Макрос As VBComponent
For Each Макрос In НовыйФайл.VBProject.VBComponents
НовыйФайл.VBProject.VBComponents.Remove Макрос
Next Макрос
' Очистка памяти
Set НовыйЛист = Nothing
Set НовыйФайл = Nothing
End Sub