Au 1er janvier 2025, l'Aisne compte 522 791 habitants, avec une part de 29 % de personnes de plus de 60 ans. Le département dispose de 164 pharmacies et 195 pharmaciens titulaires, en diminution de 9 % par rapport à 2019. Les titulaires de plus de 40 ans pèsent pour 74 % dans l'ensemble. On y dénombre 211 pharmaciens adjoints, soit 1,3 par officine, avec une évolution positive de 5 % sur la période 2019–2025. Nous avons identifié 62 ventes d'officines, avec une valeur moyenne d'achat dans le département de l'Aisne à 70% du chiffre d'affaires.
Sur ouipharma.fr, nous avons publié depuis 2015, 12 annonces de pharmacies à vendre, avec un chiffre d'affaires moyen de 1 049 249€HT. Au 15/12/2025, elles ont generé 10292 consultations et il y a eu 8 candidatures à la reprise des officines dans le département Aisne.
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 idéalement implantée en zone rurale
2)
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 rurale seule au village
2)
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 en ZRR, contexte favorable
2)
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
Opportunité d'association dans affaire très bien gérée
2)
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
Prix de vente très attractif
2)