Im sorry to say but you can not catch the legenedry celebi in Pokemon heart gold but you can get action replay and type in the code for action replay to catch celebi or you could go to the next celebi event
you can get it at game stop but now it no late for that :(
Yes, you can capture Heracross in Pokemon HeartGold (And in Pokemon SoulSilver). You must go to Azalea Town and heabutt into the trees there, and eventually you will encounter one.
celebei
No
You cannot capture your opponents. You cannot capture your opponent's Pokemon, either. You can only catch wild Pokemon.
No, you cannot catch a Charizard in Pokémon HeartGold and SoulSilver.
No. It is an event pokemon, or you can hack it which I don't recommend.
You capture Zirachi in MT Silver on the grass
Pokemon HeartGold and SoulSilver.
Well You can't Capture it so trade from other Pokemon games
trade from Pokemon diamond/pear
The PokeWalker allows you to walk with a select Pokemon from your copy of HeartGold and if you walk enough, you can capture extremely rare Pokemon (though not legendary).