Для того, чтобы получить список всех значений и записей указанного раздела, достаточно воспользоваться функцией GetAllSettings. Обратите внимание на то, что эта функция возвращает двумерный массив (тип Variant), первый столбец которого, содержит имена всех записей указанного раздела, а второй столбец содержит значения всех записей. Однако, если Вы попытаетесь получить список записей и их значений, для несуществующей ветки или раздела, то тогда функция GetAllSettings возвратит значение Empty (Пусто).
iAllSettings = GetAllSettings(AppName:="UserForm1", Section:="TextBox1") 'Or
'iAllSettings = GetAllSettings("UserForm1", "TextBox1")
If Not IsEmpty(iAllSettings) Then
For iCount = 0 To UBound(iAllSettings)
MsgBox _
"Имя записи : " & iAllSettings(iCount, 0) & vbCrLf & _
"Значение : " & iAllSettings(iCount, 1)
Next
End If
Данная функция также позволяет работать только с одним разделом реестра:
HKEY_USERS\...\VB and VBA Program Settings\... 'Win98/WinMe
HKEY_CURRENT_USER\...\VB and VBA Program Settings\... 'Win2000/WinXP