编辑Excel的VBA code时中文出现乱码,求助

这是我的执行代码,生成excel之后查看vba里面的code,‘手机号’这个这个文字显示"???"乱码。我该怎么解决
`private static void vba2() throws Exception {

    Workbook workbook = new Workbook();
    VbaModule module = workbook.getVbaProject().getModules().get(0);
    module.setCodes("Private Sub Workbook_Open()\n" +
            "    Dim ws As Worksheet\n" +
            "    For Each ws In ThisWorkbook.Worksheets\n" +
            "        If ws.name = \"Evaluation Warning\" Then\n" +
            "            Application.DisplayAlerts = False\n" +
            "            ws.Delete\n" +
            "            Application.DisplayAlerts = True\n" +
            "            Exit For\n" +
            "        End If\n" +
            "    Next ws\n" +
            "    Const age As Integer = 3\n" +
            "    Sheet1.Range(\"A1\") = \"手机号\"\n" +
            "End Sub\n" +
            "\n" +
            "\n");
    workbook.save("xxx.xlsm", SaveFormat.XLSM);
}`

@lijinkun123,

我们注意到您使用示例代码提到的问题。 我们发现VBA代码有中文乱码。 您可能需要指定正确的编码类型以显示 vba 模块的中文字符。 无论如何,我们需要详细调查您的问题。

我们在内部问题跟踪系统中打开了以下新工单,并将根据免费支持政策中提到的条款提供修复:
问题 ID:CELLSJAVA-45358

如果您需要优先支持以及直接联系我们的付费支持管理团队,您可以获得付费支持服务。

@lijinkun123
请设置VBA 工程的编码格式:

 workbook.getVbaProject().setEncoding(Encoding.getEncoding(936));
  workbook.save(dir + "dest.xlsm", SaveFormat.XLSM); 

Thank you very much. It’s effective

@lijinkun123
有一点要说明一下, 即使设置了编码, 这个代码也只能在中文的操作系统上显示正确,而且最好office 也是中文的。其他语言的操作系统还是会显示乱码。微软在VBA的编码处理方面应该是有点问题。