Я думаю, что ваш вопрос сбивает с толку, потому что то, что вы действительно хотите сделать, - это сохранить одно значение как CSV. Цитаты, которые создаются, вероятно, из других частей вашего файла. Возможно, есть лучшие методы для достижения sh какова ваша общая цель. Вот хорошее сообщение StackOverflow о файлах CSV через Excel, которое может быть полезным.
В любом случае, есть два решения для сохранения значения именованного диапазона в виде файла CSV с помощью макроса. Убедитесь, что указанный диапазон находится на уровне рабочей книги (не листа).
Первый вариант
Sub MakeASingleValueCSVFile()
Dim FileName As String: FileName = "filename.csv"
Dim PathName As String: PathName = Application.ActiveWorkbook.Path
Dim finalValue As Double: finalValue = Range("MetricValue").Value
Dim iFileNum As Long
iFileNum = FreeFile
Open PathName & "\" & FileName For Output As iFileNum
Print #iFileNum, finalValue
Close #iFileNum
End Sub
В нем есть проблемы с пробелами, которые могут вам не понравиться.
Вариант 2
(дополнено более динамичным c решением по первому вопросу)
Const FileName As String = "filename2"
Const namedRange As String = "MetricValue" 'make sure at workbook level
Dim PathName As String: PathName = Application.ActiveWorkbook.Path
Dim pullRNG As Range: Set pullRNG = Range(namedRange)
Dim wkBK As Workbook: Set wkBK = Application.Workbooks.Add
With wkBK
.Sheets(1).Cells(1, 1).Resize(pullRNG.Rows.Count, pullRNG.Columns.Count) = pullRNG.Value
.SaveAs PathName & "\" & FileName, xlCSV
.Close
End With