ERLANDSEN DATA CONSULTING Excel & VBA Tips   Information in English / Informasjon på engelsk

Disse websidene oppdateres ikke lengre og er kun tilgjengelig for historikken sin skyld.

Klikk her for å gå til den oppdaterte informasjonen.

Private Profile Strings med Registeret

Private Profile Strings benyttes til å lagre brukerspesifikk informasjon utenfor programmet/dokumentet for senere bruk. Man kan for eksempel lagre informasjon om hva som sist ble utfylt i en dialog/UserForm, hvor mange ganger en arbeidsbok har blitt åpnet eller det siste nummeret som ble brukt på av en fakturamal. Private Profile Strings for den enkelte brukeren kan lagres i Registeret eller i en INI-fil, enten på den lokale harddisken eller i en delt nettverksmappe. Her er eksemplene som viser hvordan man kan lese og skrive informasjon til Registeret.

NB! Det anbefales ikke å tukle med Registeret dersom man ikke vet hva man gjør, i verste fall kan man risikere at man må installerere maskinens operativsystem og annen programvare på nytt.

' the examples below assumes that the range B3:B5 in the active sheet contains
' information about Lastname, Firstname and Birthdate

Sub WriteUserInfoToRegistry()
' saves information in the Registry to
' HKEY_CURRENT_USERSoftwareVB and VBA Program SettingsTESTAPPLICATION
    On Error Resume Next
    SaveSetting "TESTAPPLICATION", "Personal", "Lastname", _
        Range("B3").Value
    SaveSetting "TESTAPPLICATION", "Personal", "Firstname", _
        Range("B4").Value
    SaveSetting "TESTAPPLICATION", "Personal", "Birthdate", _
        Range("B5").Value
    On Error GoTo 0
End Sub

Sub ReadUserInfoFromRegistry()
' reads information in the Registry from
' HKEY_CURRENT_USERSoftwareVB and VBA Program SettingsTESTAPPLICATION
    Range("B3").Formula = GetSetting("TESTAPPLICATION", "Personal", _
        "Lastname", "")
    Range("B4").Formula = GetSetting("TESTAPPLICATION", "Personal", _
        "Firstname", "")
    Range("B5").Formula = GetSetting("TESTAPPLICATION", "Personal", _
        "Birthdate", "")
End Sub


' the example below assumes that the range D4 in the active sheet contains
' information about the unique number

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()
' deletes information in the Registry from
' HKEY_CURRENT_USERSoftwareVB and VBA Program SettingsTESTAPPLICATION
    On Error Resume Next
    DeleteSetting "TESTAPPLICATION" ' delete all information
    'DeleteSetting "TESTAPPLICATION", "Personal" ' delete one section
    'DeleteSetting "TESTAPPLICATION", "Personal", _
        "Birthdate" ' delete one key
    On Error GoTo 0
End Sub

 

Dokumentet er sist oppdatert 2000-04-07 12:36:02      Utskriftsvennlig versjon

 

Erlandsen Data Consulting     http://www.erlandsendata.no/   
Excel & VBA Tips   Copyright ©1999-2017    Ole P. Erlandsen   All rights reserved
E-post kontaktadresse