0

我们正在为 Excel 文件编写一个非常基本的宏,它从单元格中获取值并将它们放入 JSON 格式的文本文件中。我们正在使用该Range函数来提取单元格值,如下所示:

Print #iFile, "          ""title"": """ & Range("AP" & cell.Row).Value & """"

我确信这不是最漂亮或最有效的方法,但它似乎对我们的目的有效(老实说,我们手头没有任何人实际上是 VBA 开发人员......)。但是,问题是当我们遇到上面的 VBA 代码无法识别的外来字符(拉丁语、日语等)时。

我们想要做的不仅是从单元格中提取字符串,无论那里有什么类型的字符(ASCII 或其他),并将它们放入文本文件中,对字符串值进行任何必要的编码,以便文件将仍然包含有效的 JSON。

对此问题的任何帮助将不胜感激,因为这是一个远离我舒适区的主题(前端 Web 开发)。

4

1 回答 1

0

这应该让你朝着正确的方向前进

Public Sub SaveUnicodeCharacterInTextFile()
' Declare a FileSystemObject.
Dim fso As FileSystemObject
' Create a FileSystemObject.
Set fso = New FileSystemObject
' Declare a TextStream.
Dim stream As TextStream
' windows path name
wbPath = ActiveWorkbook.Path
' name the output file and path to save it to - same directory as the workbook
outFile = wbPath & "\outputfile.txt"
' Create a TextStream. Overwrite = true Unicode = True
Set stream = fso.CreateTextFile(outFile, True, True)
'Put a value in the stream - in this case we are simly pulling the value out of one cell
'You can certainly iterate through the worksheet
stream.Write (Range("A1"))
'close the stream
stream.Close
End Sub
于 2012-10-18T05:48:05.833 回答