System.PrivateProfileString property (Word)

Returns or sets a string in a settings file or the Microsoft Windows registry. Read/write String.

Syntax

expression. PrivateProfileString( _FileName_ , _Section_ , _Key_ )

expression An expression that returns a 'System' object.

Parameters

Name Required/Optional Data type Description
FileName Required String The file name for the settings file. If there is no path specified, the Windows folder is assumed.
Section Required String The name of the section in the settings file that contains Key. In a Windows settings file, the section name appears between brackets before the associated keys (don't include the brackets with Section). If you are returning the value of an entry from the Windows registry, Section should be the complete path to the subkey, including the subtree (for example, "HKEY_CURRENT_USER\Software\Microsoft\Office\version\Word\Options").
Key Required String The key setting or registry entry value you want to retrieve. In a Windows settings file, the key name is followed by an equal sign (=) and the setting. If you are returning the value of an entry from the Windows registry, Key should be the name of an entry in the subkey specified by Section (for example, "STARTUP-PATH").

Remarks

You can write macros that use a settings file to store and retrieve settings. For example, you can store the name of the active document when you exit Microsoft Word so that it can be reopened automatically the next time you start Word. A settings file is a text file with information arranged like the information in the Windows 3.x WIN.INI file.

Example

This example sets the current document name as the LastFile setting under the MacroSettings heading in Settings.txt.

System.PrivateProfileString("C:\Settings.txt", "MacroSettings", _ 
 "LastFile") = ActiveDocument.FullName

This example returns the LastFile setting from Settings.txt and then opens the document stored in LastFile.

LastFile = System.PrivateProfileString("C:\Settings.Txt", _ 
 "MacroSettings", "LastFile") 
If LastFile <> "" Then Documents.Open FileName:=LastFile

This example displays the value of the EmailName entry from the Windows registry.

aName = System.PrivateProfileString("", _ 
 "HKEY_CURRENT_USER\Software\Microsoft\" _ 
 & "Windows\CurrentVersion\Internet Settings", "EmailName") 
MsgBox aName

See also

System Object

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.