【问题标题】:VBA Textbox to UTF-8 TextfileVBA 文本框到 UTF-8 文本文件
【发布时间】:2021-05-15 08:27:04
【问题描述】:

我有一个 VBA 脚本来将用户窗体文本框的输入保存到文本文件。 问题是它以 ANSI 编码而不是 UTF-8 保存它。

有办法改变吗?

这是我的代码:

Private Sub CommandButton1_Click()
Call WriteFile("C:\Zuschauer.txt", TextBox1)
End Sub

Sub WriteFile(ByRef Path As String, ByRef Text As String)
  Dim FileNr As Long
  FileNr = FreeFile
  Open Path For Output As #FileNr
  Print #FileNr, Text;
  Close #FileNr
End Sub

【问题讨论】:

    标签: excel vba textbox userform


    【解决方案1】:

    以下代码使用ADODB.Stream,因此您需要在项目中添加对Microsoft Active Data Objects 6.1 Library 的引用(6.1 以外的版本也可以使用)。

    Sub WriteUnicodeUTF8File(ByVal FileSpec As String, ByVal data As String)
        With New ADODB.Stream
            .Type = adTypeText
            .Charset = "UTF-8"
            .Open
            .WriteText data
            .SaveToFile FileSpec, adSaveCreateOverWrite
            .Close
        End With
    End Sub
    

    根据您的具体情况,您可能需要选择不同的选项,例如adSaveCreateOverWrite

    【讨论】:

      猜你喜欢
      • 2010-10-01
      • 2011-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多