Скопируйте лист как новый файл со всеми ячейками в виде чисел вместо формул - PullRequest
0 голосов
/ 06 марта 2019

У меня есть рабочий лист «Форма», заполненный множеством ячеек с формулами на основе данных в рабочем листе «Данные» в той же книге «Мастер».После запуска макроса я хочу сохранить «Форму» как новый файл, чтобы все ячейки имели значения, а не формулы, то есть они не должны зависеть ни от одного листа в «Мастер».

Во-вторых, имя должно быть строкой, объединенной из содержимого в ячейке D3 и ячейке D4 таблицы «Форма», но в то время как ячейка D4 является строкой, ячейка D3 является датой.Я хочу преобразовать эту дату в ddmmyyyy формат.Имя файла должно быть String Concatenate (D3, D4) -> ddmmyyy XXXXXX.xlsx

Я уже сделал это, но ячейки в новом файле Format.xlsx являются формулами, а не значениями, и я не знаю,как изменить имя, составленное из содержимого двух ячеек

D3 содержит дату - 3/7/2019, а D4 содержит строку - «XXXX»

Dim wb As Workbook
Set wb = Workbooks.Add
ThisWorkbook.Sheets("Format").Copy Before:=wb.Sheets(1)
wb.SaveAs Range("D3").Value & Range("D4").Value & ".xlsx"

1 Ответ

0 голосов
/ 06 марта 2019

Здесь:

Dim wb As Workbook
Set wb = Workbooks.Add
With wb
    ThisWorkbook.Sheets("Format").Copy Before:=.Sheets(1)
    .Sheets(1).UsedRange.Value = .Sheets(1).UsedRange.Value
    .SaveAs Format(.Sheets(1).Range("D3").Value, "ddmmyyyy") & " " & .Sheets(1).Range("D4").Value & ".xlsx"
End With
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...