I have seen cases where the ignition module controls both the spark & firing of the fuel injectors have one or both functions "come & go" intermittently too..
A late friend had a 90's GMC that refused to fire up every morning unless it was given a snort of ether--once it fired up and ran,it ran flawlessly the rest of the day,or until it sat long enough to get completely cooled off..(like 5 pm after work! )...
He tried replacing a lot of things and finally tried another new ignition module ,despite the other being recently purchased and didn't seem to make a difference..the truck started right up and ran "right" finally and gave no grief until he passed away over 2 years later..
Another common issue I'm told on 2000 and newer trucks ,have a short wiring harness that has some sort of resistor that fails ,I think its attached to the gas pedal...and it makes the engine not want to fire at colder temps when it goes sour --a guy I know lived with his 2000 chevy truck with a 4.8 not starting just about every cold winter morning or having to crank the snot out of it and keep cycling the key ,if you were lucky it would fire up suddenly ..he too kept a can of ether in the truck for when it refused to fire on its own..
He replaced the fuel pump,sending unit,fuel pump relay,oil pressure switch,inspected all the wires,found no damage or broken connections--nothing helped..it never set a code either..he was getting angry enough to junk the truck after it acting up every morning or night after work..
One day at a dealer,he asked the parts guy "what can cause this ?"- parts guy told him "You probably need this harness,its $35",he said "let me have it,I have already blown a few hundred on parts and my labor and still cant trust it..whats another $35?"..
He installed the harness and that cured it..
