2011-10-13 13 views
17

necesito una manera independiente de idioma para obtener "Mis documentos" carpeta en VBA Excel 2003.Idioma manera independiente para conseguir "Mis documentos" carpeta en VBA Excel 2003

Lo que tengo:

Public Function MyDocsPath() As String 
    MyDocsPath = Environ$("USERPROFILE") & "\My Documents\" 
End Function 

Debido a que el programa se utilizará en al menos 2 lang MS Windows, y el nombre "Mis documentos" cambia para cada idioma.

¿Hay alguna manera, o debo tratar de descubrir el lenguaje del sistema y volverme específico?

Respuesta

27

Esto puede satisfacer:

Set WshShell = CreateObject("WScript.Shell") 
strDocuments = WshShell.SpecialFolders("MyDocuments") 

Desde: http://msdn.microsoft.com/en-us/library/0ea7b5xe.aspx

Aunque el nombre de la carpeta especial es MyDocuments, se refiere a la carpeta de documentos de varias versiones de Windows.

+1

Funcionó perfectamente. Al menos para inglés y portugués (que es todo lo que necesito). Namaste mi amigo –