I've used Weepinbell/Victreebel in HeartGold before, and later in they game they really suck. Their only good attack moves are Acid and Razor Leaf until lv 47, when Victreebel learns Leaf Blade. But, by that level you're almost done the game anyways. When you look at the Elite Four, Victreebel is only really good against Bruno's Onix. But, as long as you're having fun, use whatever Pokémon you want to in-game. Just because Victreebel isn't the best option doesn't mean there's a rule that you can't use it.
But, I am off-topic. You want to replace Weepinbell. Grass attacks actually don't cover any weaknesses that your Pokémon have, so you could choose another type of Pokémon instead. If you do want a Grass-type, I would recommend Vileplume.
Johto's selection of Grass-types is small and pretty bad, but Vileplume is probably the best option. Yes, it does have the same typing as Weepinbel, but it ends up being a little bulkier and has better special attack. Unfortunately, it suffers from the same problems Weebinbell/Victreebel do — the best moves that it learns, Giga Drain and Petal Dance, are learned at lv 47 (Gloom learns Giga Drain, then if it evolves at lv 47 Vilplume can learn Petal Dance). Both are great attacks, and you'll probably find that toe-for-toe, Vileplume swingss a slightly heavier punch than Victreebel.
Of course, if you don't want to replace Weepinbel with a Grass-type, there are a few strong options I can reccommend.
Girafarig really surprised me the when I used it in a Nuzlocke run. It's fast and strong, with good coverage moves. I cannot stress how awesome Girafarig is and it is my life's purpose to spread the gospel of Girafarig to the known corners of the universe. For a moveset, I would reccommend Double Hit / Psychic / Psybeam / Crunch. Be sure to nickname it a palindrome like Race Car or Kayak for extra swagger.
Magneton is my #1 favourite Pokémon to use in-game because it's so powerful. It doesn't have much for coverage, but who cares when you're spamming Discharge and Mirror Shot all day long? For a moveset I would say Discharge / Mirror Shot / Lock-On / Thunder is my favourite. It should be nicknamed after something from fantasy or sci-fi, like Protectron or Cyberman.
Nidoking and Nidoqueen are basically gods if set up right. They both have good defences and offences, with Nidoqueen being more defensive and Nidoking being more offensive. Oh, and they also learn like a billion coverage moves. If you have some extra TMs I'm sure you can throw them at one of these monsters and they'll be ready to dish out more pain than John Wick. However, TMs are their both biggest strength and biggest weakness. If you used up all of the good TMs already, the King and Queen will suffer for it. Nidoking and Nidoqueen will only have Peck, Double Kick, Surf and Earth Power before the E4, and Nidoqueen will only have Body Slam, Double Kick, Surf, and Earth Power. However, if you have any of the following TMs, they will improve instantly.
- Dig
- Shadow Ball/Shadow Claw
- Brick Break
- Flamethrower/Fire Blast
- Shock Wave/Thunderbolt
- Aerial Ace
- Dragon Pulse
- Avalanche/Ice Beam
- Poison Jab (it's a decent option if you don't have better TMs)
You'll want to use physical moves when you can because both Pokémon are better physical attackers. One other problem is that their Poison typing will overlap with Crobat's, meaning you might have a slightly harder time fighting Will. Other than that, these are some good Pokémon. The best nicknames are either monarchy-themes or kaiju-themed, it doesn't matter which.
I hope this helps you make your choice! You may not agree with any of these options — at the end of the day it's up to you and what you find the most fun :)