La Manche compte 492 642 habitants en 2023, dont 34 % ont plus de 60 ans. Le département recense 134 pharmacies pour 200 pharmaciens titulaires, en baisse de 6 % depuis 2019. Les titulaires de plus de 40 ans représentent 71 %. On y trouve 184 pharmaciens adjoints, soit 1,4 par officine, en progression de 18 % sur la période. D'après nos analyses il y a eu 65 transactions de pharmacies, avec une valeur moyenne de vente dans le département de la Manche à 75% du chiffre d'affaires.
Sur ouipharma.fr, nous avons publié depuis 2015, 5 annonces de pharmacies à vendre, avec un chiffre d'affaires moyen de 1 238 708€HT. Au 15/12/2025, elles ont generé 3881 consultations et il y a eu 10 candidatures à la reprise des officines dans le département Manche.
module ApplicationHelper
# Safely check if an asset is available in the pipeline (dev & prod)
def asset_present?(logical_path)
logical_path = logical_path.to_s
return false if logical_path.blank?
if Rails.application.config.assets.compile
# Development: Sprockets environment is available
!!Rails.application.assets&.find_asset(logical_path)
else
# Production: check compiled manifest
manifest = Rails.application.assets_manifest
manifest && (
(manifest.assets && manifest.assets.key?(logical_path)) ||
(manifest.files && manifest.files.key?(logical_path))
)
end
rescue
false
end
def pictogram(pharmacy, options = {})
options = { image_helper: :image_tag, size: "640_360" }.merge(options)
base_dir = "pictograms/environnement/#{options[:size]}"
img_extension = (options[:format] || "png").to_s
env_slug = (pharmacy.respond_to?(:environnement) && pharmacy.environnement.presence) || "centre-ville"
expected = "#{base_dir}/#{env_slug}.#{img_extension}"
fallback_asset = "placeholders/pharmacy-#{options[:size].tr('x', '_')}.png"
if asset_present?(expected)
send(options[:image_helper], expected, options.merge(alt: "Pharmacie #{env_slug} sur Ouipharma.fr"))
elsif asset_present?(fallback_asset)
send(options[:image_helper], fallback_asset, options.merge(alt: "Pharmacie | Ouipharma.fr"))
else
svg = <<~SVG
Pharmacie
SVG
data_uri = "data:image/svg+xml;utf8,#{ERB::Util.url_encode(svg)}"
send(options[:image_helper], data_uri, options.merge(alt: "Pharmacie | Ouipharma.fr"))
end
end
end
Officine semi-rurale dans village
50)
module ApplicationHelper
# Safely check if an asset is available in the pipeline (dev & prod)
def asset_present?(logical_path)
logical_path = logical_path.to_s
return false if logical_path.blank?
if Rails.application.config.assets.compile
# Development: Sprockets environment is available
!!Rails.application.assets&.find_asset(logical_path)
else
# Production: check compiled manifest
manifest = Rails.application.assets_manifest
manifest && (
(manifest.assets && manifest.assets.key?(logical_path)) ||
(manifest.files && manifest.files.key?(logical_path))
)
end
rescue
false
end
def pictogram(pharmacy, options = {})
options = { image_helper: :image_tag, size: "640_360" }.merge(options)
base_dir = "pictograms/environnement/#{options[:size]}"
img_extension = (options[:format] || "png").to_s
env_slug = (pharmacy.respond_to?(:environnement) && pharmacy.environnement.presence) || "centre-ville"
expected = "#{base_dir}/#{env_slug}.#{img_extension}"
fallback_asset = "placeholders/pharmacy-#{options[:size].tr('x', '_')}.png"
if asset_present?(expected)
send(options[:image_helper], expected, options.merge(alt: "Pharmacie #{env_slug} sur Ouipharma.fr"))
elsif asset_present?(fallback_asset)
send(options[:image_helper], fallback_asset, options.merge(alt: "Pharmacie | Ouipharma.fr"))
else
svg = <<~SVG
Pharmacie
SVG
data_uri = "data:image/svg+xml;utf8,#{ERB::Util.url_encode(svg)}"
send(options[:image_helper], data_uri, options.merge(alt: "Pharmacie | Ouipharma.fr"))
end
end
end
Pharmacie récente à vendre
50)