By what I understand from your explanation about the use case, I would like you to know this:
1) onEdit - Specifies a trigger that will fire when the spreadsheet is edited.
2) onChange - Specifies a trigger that will fire when the spreadsheet's content or structure is changed.
These are the conditions stated by Google.
Now what it does not tell us is:
1) The edit has to be manual
Now you said you tried manually as well but the trigger did not fire. A possible reason for that is that you might have copied the data from somewhere and then pasted it where you want it. So, you cannot expect the trigger to fire in that case.
2) The edit cannot be any form of automation (it cannot be done using a spreadsheet formula or using any script). In this case as well, the trigger would not fire.
So, in all, what you are facing is not a consequence of any of the limitations stated by Google. Sadly, It is what it is.
What you will have to do is, think of another way to go about what you are trying to achieve, which is, use something else except the onChange and the onEdit triggers.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…