我们正在为Excel文件编写一个非常基本的宏,它从单元格中获取值并将它们放入具有JSON格式的文本文件中。我们使用Range
函数来提取像这样的单元格值:
Print #iFile, " ""title"": """ & Range("AP" & cell.Row).Value & """"
我确信这不是最漂亮或最有效的方法,但它似乎适用于我们的目的(并且说实话,我们手边没有任何人真正是VBA开发人员......) )。但问题是,当我们遇到外来字符(拉丁语,日语等)时,VBA代码无法接收这些字符。
我们想要做的不仅是从单元格中提取字符串,无论字符是什么类型(ASCII或其他),并将它们放入文本文件中,对字符串值进行任何必要的编码,以便该文件仍将包含有效的JSON。
对此问题的任何帮助都将非常感激,因为这是一个远远超出我的舒适范围的主题(前端Web开发)。
答案 0 :(得分: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