Here is how you would modify Oosh's two-macro solution for tiny Animated Objects.
Make two abilities on a character sheet. If you do NOT want the macro tied to a specific character, you can make a generic "character" called "Macro Mule" and set its permissions to whatever you'd like, and check the "show in macro bar" option. The link in my first reply has some screenshots and instructions for making abilities if you haven't used them before. Abilities are basically "macros" that exist on a given character sheet. They have some advantages over macros when you are making chat buttons linking to them and some other things I won't get into.
The first ability you will call "AnimateObjAtt" and the second you will call "AnimateObjDam"
AnimateObjAtt
&{template:default} {{Atk [[[{?{Number of attacks|10},1}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }} {{Atk [[[{?{Number of attacks|10},1}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }} {{Atk [[[{?{Number of attacks|10},2}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},3}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},4}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},5}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},6}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},7}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},8}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},9}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{Atk [[[{?{Number of attacks|10},10}kl1]]](#)= [[?{Roll|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1}+8]] vs AC [[?{Target AC|15}]] }}{{[Roll Damage](~Macros|AnimateObjDam)}} {{name=Animate Objects Attacks}}
AnimateObjDam
&{template:default}{{name=Animate Objects Damage}}{{Tiny objects hits for a total of** [[ [[ ([[?{How many attacks hit?|1}]] + [[?{How many attacks critically hit?|0}]])]]d4 + ?{How many attacks hit?}*4]] bludgeoning damage**.
$[[0]] attacks hit the target and $[[1]]of those critically hit!}}
Here is sample output for the full 10 attacks. We see that 9 attacks hit and one was a crit. Oosh's solution is nice because it only outputs the number of attacks you specify, and it adds all the damage for you, including crits, when you follow the prompts from the damage chat button.
