This might be a different tack on it, but sometimes when I get burned out, I will deliberately allow myself to take a week off and not feel guilty about it. Now, I say this in the context of you coming across like you have been fairly diligent in your workout routine... if someone has been half assed at it, then taking a week off will only serve to further UN-motivate.
But, just as we need an occasional vacation week from work that allows us to return refreshed and recharged a bit, same principle can apply with the workout. In fact, it often results in a sort of "taper down" effect, and after the rest I find myself actually having an easier time with weights or running distances that were giving me difficulty before the break.
Another strategy is to alter the length of your workout. The main times I have gotten burned out at the gym are the times when I have let my workout lag a bit too long each day. So, instead of spending a LONG time at the gym, like a few hours, I make a point of keeping my total gym time to an hour or less, and NEVER longer than an hour and a half. But, the flip side of this is that in exchange for a shorter workout, I make a point of going to the gym more frequently throughout the week. Why? Well, there is something about only spending an hour at the gym that makes it less mentally taxing to initiate getting changed, getting in the car, etc. Knowing that I'll be in and out in an hour makes it seem like it is less of a big deal, and less of a hindrance of time in the broader daily schedule I have to keep. Wheras if you go to the gym for hours on end, it makes it seem like more of a grand production and more of a mental hassle to find time in the day to "fit it in", so you end up skipping the day just because of minor unexpected time conflicts.
Another strategy is to add some variety to your workout. Sounds like you have a few degrees of variety already (punching bag, weights, and running), but adding in something different might add some freshness? Is there a pool that you can have access to? Perhaps try some swimming? Or, combining my advice with HairLossTalk.com's, you might consider a group exercise class if they are offered at your gym? This would not only be an addition of some variety to your existing cardio regimen, if you scout out the classes for a bit, perhaps you can find one that seems to draw a lot of girls, too. Or, and this is one that I like to do from time to time, if your gym membership is for a chain of gyms, as mine is (Ballys), it is sometimes fun to go to a different gym location of the same chain. Instead of going to the Ballys closest my home, I will instead hit the other Ballys in town that is close to my office. Change of scenery, different routine, and it just keeps things fresh.