Soukromé profilové řetězce pomocí registru pomocí VBA v aplikaci Microsoft Excel

Anonim

Soubory soukromého profilu se často používají k ukládání informací specifických pro uživatele mimo aplikaci/dokument pro pozdější použití.
Můžete například uložit informace o nejnovějším obsahu do dialogového okna/UserForm,
kolikrát byl otevřen sešit nebo poslední použité číslo faktury pro šablonu faktury.
Soukromé profilové řetězce pro každého uživatele lze uložit do registru. Můžete také použít soubor INI,
buď na místním pevném disku, nebo ve sdílené síťové složce.

Zde jsou ukázková makra pro zápis a čtení z řetězců soukromého profilu v registru.

'níže uvedené příklady předpokládají, že rozsah B3: B5 v aktivním listu obsahuje' informace o příjmení, jménu a datu narození Sub WriteUserInfoToRegistry () 'ukládá informace v registru do' HKEY_CURRENT_USER \ Software \ VB a VBA Program Settings \ TESTAPPLICATION On Error Resume Další SaveSetting "TESTAPPLICATION", "Personal", "Lastname", Range ("B3"). Value SaveSetting "TESTAPPLICATION", "Personal", "Firstname", Range ("B4"). Value SaveSetting "TESTAPPLICATION", "Personal "," Datum narození ", Rozsah (" B5 "). Hodnota při chybě GoTo 0 End Sub Sub ReadUserInfoFromRegistry () 'čte informace v registru z' HKEY_CURRENT_USER \ Software \ VB a VBA Program Settings \ TESTAPPLICATION Range (" B3 "). Formula = GetSetting ("TESTAPPLICATION", "Personal", "Lastname", "") Range ("B4"). Formula = GetSetting ("TESTAPPLICATION", "Personal", "Firstname", "") Range ("B5" ) .Formula = GetSetting ("TESTAPPLICATION", "Personal", "Birthdate", "") End Sub 'níže uvedený příklad předpokládá, že rozsah D4 v aktivním zobrazení t obsahuje informace o jedinečném čísle Sub GetNewUniqueNumberFromRegistry () Dim UniqueNumber As Long UniqueNumber = 0 On Error Resume Next UniqueNumber = CLng (GetSetting ("TESTAPPLICATION", "Personal", "UniqueNumber", "")) On Error GoTo 0 Range ("D4"). Formula = UniqueNumber + 1 SaveSetting "TESTAPPLICATION", "Personal", "UniqueNumber", Range ("D4"). Value End Sub Sub DeleteUserInfoFromRegistry () 'vymaže informace v registru z' HKEY_CURRENT_USER \ Software \ Nastavení programu VB a VBA \ TESTAPPLICATION při chybě Pokračovat Další DeleteSetting "TESTAPPLICATION" "smazat všechny informace" DeleteSetting "TESTAPPLICATION", "Personal" "smazat jednu sekci" DeleteSetting "TESTAPPLICATION", "Personal", "Birthdate" '' delete one key On Chyba GoTo 0 End Sub