
The Shell Bell can be found in a small alcove amongst the trees just southeast of Union Cave on Route 32. To retrieve this item, you will need to have already earned your first Gym Badge from Falkner’s Gym, and you’ll need a Pokémon who knows Rock Smash.
Note: HM06 Rock Smash can be obtained from a man wearing a pink shirt on Route 36, located north-west of Violet City.
There are no other methods to acquire more Shell Bells aside from trading with other games. So there is only 1 available Shell Bell in HG/SS, and there are no repeatable acquisition methods.

The Shell Bell is an item that will recover HP to the Pokémon who is holding it whenever they deal damage to their opponent in battle. The amount of health recovered is equal to 1/8th of the damage inflicted.
Shell Bell Location (Step-by-Step)

Step 1: Start from the Pokémon Center on Route 32, then head south, past the blonde haired man and signpost, until you reach the end of the path.
This blonde NPC is Bird Keeper Peter, and he is a battleable NPC. If you would prefer to avoid the battle, then stay to the left-most side of the path until you’ve passed him.

Step 2: Looking at the very bottom-eastern side of the map, you will see a short path amongst the trees that’s blocked by a breakable rock.
Beyond this rock you should see an overworld item in the small clearing.

Step 3: Use Rock Smash on the rock and collect the overworld Pokéball to obtain the Shell Bell.

-
Pokémon HGSS
- Where To Get the Shell Bell in Pokémon HGSS