Clase FileConverter - convertidor de archivos (Word VBA)

La clase FileConverter representa un convertidor de archivos que se utiliza para abrir o guardar archivos.

Para usar una variable de clase FileConverter, primero debe ser instanciado, por ejemplo

Dim fcr as FileConverter
Set fcr = FileConverters(Index:=1)

Las variables de tipo FileConverter se pueden establecer utilizando el procedimiento FileConverters.Item

For Each

A continuación, se muestra un ejemplo de cómo procesar los elementos FileConverter en una colección.

Dim fcr As FileConverter
For Each fcr In FileConverters
	 If fcr.CanOpen = True Then MsgBox fcr.OpenFormat & vbCr & fcr.FormatName
Next fcr

CanOpen

True si el convertidor de archivos especificado está diseñado para abrir archivos.

La propiedad CanSave devuelve True si el convertidor de archivos especificado se puede usar para guardar (exportar) archivos.

If FileConverters(1).CanOpen = True Then 
 MsgBox FileConverters(1).FormatName & " can open files" 
End If

CanSave

True si el convertidor de archivos especificado está diseñado para guardar archivos.

La propiedad CanOpen devuelve True si el convertidor de archivos especificado se puede usar para abrir (importar) archivos.

Dim lngSaveFormat As Long 
 
If Application.FileConverters("WordPerfect6x").CanSave = _ 
 True Then 
 lngSaveFormat = _ 
 Application.FileConverters("WordPerfect6x").SaveFormat 
 ActiveDocument.SaveAs FileName:="C:\Document.wp", _ 
 FileFormat:=lngSaveFormat 
End If

ClassName

Devuelve un nombre único que identifica el convertidor de archivos.

MsgBox "ClassName= " & FileConverters(1).ClassName & vbCr _ 
 & "FormatName= " & FileConverters(1).FormatName

Extensions

Devuelve las extensiones de nombre de archivo asociadas con el objeto FileConverter especificado.

Dim fcTemp As FileConverter 
 
Set fcTemp = FileConverters(1) 
MsgBox "The file name extensions for " & fcTemp.FormatName _ 
 & " files are: " & fcTemp.Extensions

FormatName

Devuelve el nombre del convertidor de archivos especificado.

Los nombres de formato aparecen en el cuadro Guardar como tipo del cuadro de diálogo Guardar como (menú Archivo).

MsgBox FileConverters(1).FormatName

Name

Devuelve el nombre del objeto especificado.

Dim strName As String
strName = FileConverters(1).Name

OpenFormat

Devuelve el formato de archivo del convertidor de archivos especificado.

Esta propiedad puede ser cualquier constante WdOpenFormat válida, o puede ser un número único que represente un convertidor de archivos externo.

For Each fc In FileConverters 
 If fc.CanOpen = True Then _ 
 MsgBox fc.OpenFormat & vbCr & fc.FormatName 
Next fc

Path

Devuelve el disco o la ruta de acceso Web al objeto especificado.

La ruta de acceso no incluye un carácter final, por ejemplo, "C:\MSOffice" o "https://MyServer".

Dim strPath As String
strPath = FileConverters(1).Path

SaveFormat

Devuelve el formato de archivo del convertidor de documento o archivo especificado.

Esta propiedad devuelve un número único que especifica un convertidor de archivos externo o una constante WdSaveFormat .

Sub FileConverterList() 
 Dim cnvFile As FileConverter 
 Dim docNew As Document 
 
 'Create a new document and set a tab stop 
 Set docNew = Documents.Add 
 docNew.Paragraphs.Format.TabStops.Add _ 
 Position:=InchesToPoints(3) 
 
 'List all the converters in the FileConverters collection 
 With docNew.Content 
 .InsertAfter "Name" & vbTab & "Number" 
 .InsertParagraphAfter 
 For Each cnvFile In FileConverters 
 If cnvFile.CanSave = True Then 
 .InsertAfter cnvFile.FormatName & vbTab & _ 
 cnvFile.SaveFormat 
 .InsertParagraphAfter 
 End If 
 Next 
 .ConvertToTable 
 End With 
 
End Sub