Is there a way to scale up a collection of objects individually in random intervals A bit of a complicated circumstance Ill try to explain as best as I can.  I've got a collection of 300 objects that are different shapes and sizes each in a particular location.  I want to keyframe to have their scale start at zero and become one over 40 frames.  For each of these objects I want to randomly have this animation occur on the timeline eg: object 134 starts scaling at frame 34 and object 222 at frame 53, etc.  Is there any way to achieve this?
your collection should have the name &quot;Automatic_frames&quot; (or you just change the name in this script to your collection's name).
It does not check, whether you already have keyframes...so if you ran it twice, each object will scale two times and might overlap. Of course you can change the frame_from range to your needs.
you can do it like this:
import bpy
import random



for eachObject in bpy.data.collections['Automatic_frames'].objects:
    
    frame_from = random.randint(100, 400)
    frame_to = frame_from + 40
    
    eachObject.scale = (0,0,0) 
    eachObject.keyframe_insert(data_path = 'scale', frame = frame_from)    
         
    eachObject.scale = (1,1,1)
    eachObject.keyframe_insert(data_path = 'scale', frame = frame_to) 
 

possible result: