ok, forget tables and keys, you want to just deal with recordsets i would say.....have a look at this and see what you think.
this returns the users last login....based on contacting all DC's and returnin the lastest value...give it a try, will have to change domain name but i think that should be about it..
Option Explicit
Dim oRoot, sConfig, oConnection, oCommand, sQuery, acctDisabled, disname, lockedout
Dim oResults, oDC, oSite, sDNSDomain, oShell
Dim nBiasKey, nBias, k, sDCs()
Dim sAdsPath, sDate, oDate, nDate, oList, sUser,accountlock
Set oList = CreateObject("Scripting.Dictionary"

oList.CompareMode = vbTextCompare
Set oShell = CreateObject("Wscript.Shell"

nBiasKey = oShell.RegRead("HKLM\System\CurrentControlSet\Control\TimeZoneInformation\ActiveTimeBias"

If UCase(TypeName(nBiasKey)) = "LONG" Then
nBias = nBiasKey
ElseIf UCase(TypeName(nBiasKey)) = "VARIANT()" Then
nBias = 0
For k = 0 To UBound(nBiasKey)
nBias = nBias + (nBiasKey(k) * 256^k)
Next
End If
' Determine configuration context from RootDSE object.
Set oRoot = GetObject("LDAP://RootDSE"

sConfig = oRoot.Get("ConfigurationNamingContext"

sDNSDomain = oRoot.Get("DefaultNamingContext"
' Use ADO to search AD for ObjectClass nTDSDSA.
Set oCommand = CreateObject("ADODB.Command"

Set oConnection = CreateObject("ADODB.Connection"

oConnection.Provider = "ADsDSOObject"
oConnection.Open = "Active Directory Provider"
oCommand.ActiveConnection = oConnection
sQuery = "<LDAP://" & sConfig & ">;(ObjectClass=nTDSDSA);AdsPath;subtree"
oCommand.CommandText = sQuery
oCommand.Properties("Page Size"

= 100
oCommand.Properties("Timeout"

= 30
oCommand.Properties("Searchscope"

= 2
oCommand.Properties("Cache Results"

= False
Set oResults = oCommand.Execute
' Enumerate parent objects of class nTDSDSA (DCs).
k = 0
Do Until oResults.EOF
Set oDC = _
GetObject(GetObject(oResults.Fields("AdsPath"

).Parent)
ReDim Preserve sDCs(k)
sDCs(k) = oDC.DNSHostName
k = k + 1
oResults.MoveNext
Loop
For k = 0 To Ubound(sDCs) 'loop cycles through domain controllers in array.
wscript.echo sdcs(k)
sQuery = "<LDAP://" & sDCs(k) & "/OU=UK-Bracknell," & sDNSDomain & ">;(ObjectCategory=person)" & ";displayname,sAMAccountName,userAccountControl,LastLogon;subtree"
oCommand.CommandText = sQuery
Set oResults = oCommand.Execute
Do Until oResults.EOF 'loop throuugh users
sAdsPath = oResults.Fields("sAMAccountName"

sdate = oResults.Fields("LastLogon"

acctDisabled = oResults.fields("userAccountControl"

disname = oResults.fields("displayname"
if not isnull (disname) then
wscript.echo disname
end if
if acctdisabled = 514 then
acctdisabled = "true"
'else
'acctdisabled = "false"
end if
If not IsNull (oResults.Fields("LastLogon"

) Then
set oDate = sDate
nDate = #1/1/1601# + (((oDate.HighPart * (2 ^ 32)) + oDate.LowPart)/600000000 - nBias)/1440 'convert count of nanoseconds to date.
If oList.Exists(sAdsPath) Then 'Check if record exists
If nDate > oList(sAdsPath) Then 'if dose exsist. Check if current domain controllers lastlogon record is greater than the one that exists.
oList(sAdsPath) = disname & ";" &nDate & ";" & acctDisabled 'update if bigger.
End If
Else
oList.Add sAdsPath, disname & ";" & nDate & ";" & acctDisabled 'add the record if not exist
End If
End If
oResults.MoveNext 'next user within domain controller
Loop 'loop around
Next 'next domain controller
For Each sUser In oList
Wscript.Echo sUser & ";" & oList(sUser)
Next