If I understand you correctly, in order to only add folders beginning with the initial you have clicked you need to add another parameter to the AddSubFoldersToTree function passing the initial, then use that to start the loop:
AddSubFoldersToTree(Folder, ParentItemID = 0, Initial)
{
; This function adds to the TreeView all subfolders in the specified folder.
; It also calls itself recursively to gather nested folders to any depth.
Loop %Folder%\%Initial%*.*, 2 ; Retrieve all of Folder's sub-folders.
{
AddSubFoldersToTree(A_LoopFileFullPath, TV_Add(A_LoopFileName, ParentItemID, "Icon4"))
TV_Modify(0, "Sort")
}
If ParentItemID!=0
IniWrite, %A_LoopFileFullPath%, %A_Temp%\PathsList.ini, PathsList, %ParentItemID%
}
This is assuming you are recreating the treeview everytime you press the button.