2 votos

¿Cómo guardar los caracteres japoneses y coreanos en una exportación de VBA de Word 2010?

Tengo un Word 2010 documento con una tabla de 3 columnas. Las filas tienen textos con subtítulos para su uso en un video instructivo. Ejemplo de fila:

enter image description here

Estoy dirigiendo un VBA sub para guardar los subtítulos en cada uno de los tres idiomas a un vtt (texto) que será referenciado dentro del Video en la etiqueta de .html página.

El problema es que los pies de foto japoneses y coreanos están guardados como una fila de signos de interrogación.

Extractos de códigos relevantes:

Open "d:\dropbox\Japanese.vtt" For Output As #1 Set rngTable = ActiveDocument.Range(Start:=TableCell.Range.Start, End:=TableCell.Range.End - 1) Print #1, rngTable.Text

¿Qué puedo hacer para producir la salida correcta?

2voto

Yorik Puntos 435

Necesitas crear un archivo unicode y usar funciones seguras de unicode para emitir el texto.

De Documentación de Microsoft

Sub CreateAfile
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set a = fs.CreateTextFile("c:\testfile.txt", True, True)
    a.WriteLine("This is a test.")
    a.Close
End Sub

La forma es fs.CreateTextFile(filename(string), Overwrite(boolean), Unicode(boolean))

Creo que puedes usar cualquiera de los dos fs.write o fs.writeline . No estoy seguro de si Print #ff es seguro para el unicode. Es posible que necesite usar StrConv()

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: