Access shortcuts


Children shortcuts

As covered in How to access children, cJobect children are roughly equivalent to JavaScript objects' children. However the syntax of VBA means that we have to be a little more verbose than JavaScript. To help a bit, here are some shortcuts for accessing property values.

This will return the value of the selected property
job.child("somekey").value

or, as we learned in How to access children, by childIndex
job.children(1).value

Similarly, this will convert it to to a string
job.child("somekey").toString

or by childIndex
job.children(1).toString

This is roughly equivalent to simply job.somekey or job[0]  and job.somekey.toString() or job[0].toString() 

However you can pass the name of the child as an argument to toString() or to value() ( actually in the case of value() we have to use cValue() when passing a child name  (.. it's a long story but it's to do with limitations in VBA classes), so we can rewrite the .child() examples above as 

This will return the value of the selected property
job.cValue("somekey")

and
job.toString("somekey")

Grandchildren

these methods take the same arguments as .child() , so these examples all work

job.child("achild").child("agrandchild").cValue("agreatgrandchild")

is equivalent to

job.cValue("achild.agrandchild.agreatgrandchild")

which is close to the JavaScript job.achild.agrandchild.agreatgrandchild

You can also mix index and named keys, so 

job.children(1).toString("name") is equivalent to job.toString("1.name") and the JavaScript equivalent job[0].name.toString()

Now let's look at some more cJobject topics.


For help and more information join our communityfollow the blog or follow me on twitter .  For more on this see How to use cJobject


Comments