2009-08-18 27 views
47

Estoy usando la clase de diccionario en la biblioteca MS Scripting Scripting para almacenar dónde irán las etiquetas para una plantilla de informe. ¿Hay alguna manera de iterar sobre todos los pares clave de valores en ese diccionario como en Python? Solo quiero usar la clave como número de fila (Todo va en la columna A) y el valor será el encabezado de la etiqueta.¿Iterar sobre los diccionarios VBA?

Algo así como:

For Each key in dict 
    Range("A" & key).Value = dict(key) 
Next key 

Respuesta

83

Probar:

For Each strKey In oDic.Keys() 
    Range("A" & strKey).Value = oDic(strKey) 
Next 
+23

Yo añadiría que strKey debe ser declarada 'Como Variant', porque el' Para Each' no funciona con 'String's . – stenci

Cuestiones relacionadas