Numbers 31:14
And Moses was wroth with the officers of the host, with the captains over thousands, and captains over hundreds, which came from the battle.
Cross-reference
Numbers 12:3 describes Moses as very meek; his anger here stands out as a righteous response to disobedience.
Exodus 32:19 shows Moses' anger at the golden calf; here he is again angry at the officers for sparing the women.
Leviticus 10:16 shows Moses angry at the priests for mishandling a sin offering; here he is angry at the officers for disobedience.
In 1 Samuel 15:14, Samuel similarly confronts Saul for sparing livestock after a holy war command — same pattern of incomplete obedience rebuked.
In 1 Kings 20:42, a prophet rebukes Ahab for sparing a man devoted to destruction — mirroring Moses' anger at sparing the Midianites.
Jeremiah 48:10 curses slackness in God's work and holding back the sword — exactly the offense Moses rebukes here in sparing the Midianites.
In 2 Kings 13:19, Elisha is angry at Joash for incomplete obedience in striking the ground — similar anger at failing to fully execute God's command.