Estoy tratando de devolver un diccionario desde una función. Creo que la función funciona correctamente, pero no estoy seguro de cómo utilizar el diccionario devuelto.VBScript: ¿Cómo utilizar un objeto de diccionario devuelto por una función?
Aquí es la parte pertinente de mi función:
Function GetSomeStuff()
'
' Get a recordset...
'
Dim stuff
Set stuff = CreateObject("Scripting.Dictionary")
rs.MoveFirst
Do Until rs.EOF
stuff.Add rs.Fields("FieldA").Value, rs.Fields("FieldB").Value
rs.MoveNext
Loop
GetSomeStuff = stuff
End Function
Como llamar en esta función y uso el diccionario devuelto?
EDIT: He intentado esto:
Dim someStuff
someStuff = GetSomeStuff
y
Dim someStuff
Set someStuff = GetSomeStuff
Cuando intento acceder a la someStuff, me sale un error:
Microsoft VBScript runtime error: Object required: 'GetSomeStuff'
EDIT 2: Tratar esto en la función:
Set GetSomeStuff = stuff
Los resultados en este error:
Microsoft VBScript runtime error: Wrong number of arguments or invalid property assignment.
me faltaba la combinación de Conjunto GetSOmeStuff = cosas y conjunto D = GetSomeStuff. ¡Gracias! – aphoria
@ user66001 No creo que sea una buena idea intentar editar el código (o la respuesta) de otra persona (además de tareas como correcciones de errores, actualizaciones de URL, etc.), especialmente para ese punto menor, especialmente cuando están equivocados ... Si reemplaza 'd' con el nombre de la función, llama a la función cada vez que aparece. La falta de '()' podría haberle inducido a error al usar una llamada a función como una variable. No veo el sentido de crear la estructura 'stuff' cada vez. No es crítico aquí, para una demostración tan simple, pero puede ser importante en un programa real. – PhiLho
@PhiLho - Mi error. Lo siento (creo que importa por principio, así que borré mi información incorrecta). – user66001