Hello!
I have such a VBA code already written, though I want to make several remarks on your brief.
1) There is no such thing as 'true' multi-threading processes, let alone achynchronous(non-blocking) with any scripting language, VBA included as it's just that a scripting language. There is on the other hand a quasi- or pseudo- multi-threading possible, in which several lines of processing are run in relatively the same time-space. These ara ALWAYS executed sequentially and in the order of initiation, although they might appear non-correlated to the observer, due to thw different burden of work each sub-process might need to produce. In any event, since all of these sub-processes, how many they are in number, would write to one and the same document they MUST be correlated between each other, so they done just overwrite their inputs, something your current code, that you say you have but we have not seen as of this time, is certainly not capable of(That goes towars - It's simple work, no parsing needed remark, which you should have not let yourself the freedom to write in the first place, because 'ease' is a relative property and comes to operation of mind and knowledge/experience of the operator. If it was this much easy you would have done it yourself. No offence intrended.).
2) There IS parsing needed, you said it yourself, 'write the first description' out of the SERP page gathered' means exactly that.
Kind Regards,
Dobri