Vos bases Microsoft Access, reconstruites en applications web
Nous reprenons la base Access dont dépend votre entreprise, avec ses tables, ses requêtes, ses formulaires, ses états et son code VBA, et nous la reconstruisons en application web adossée à SQL Server ou MySQL. Les données sont reprises intégralement et les écrans suivent la façon de travailler de vos équipes : personne n'a à réapprendre son métier.
Pourquoi maintenant
Le support Microsoft d'Access 2021, comme celui du reste d'Office 2021, prend fin le 13/10/2026. Access 2016 et Access 2019 ne sont plus pris en charge depuis le 14/10/2025, le même jour que Windows 10. Un fichier Access ne cesse pas de s'ouvrir à ces dates, mais il ne reçoit plus de correctifs de sécurité, et chaque nouvelle version de Windows ou de Microsoft 365 peut casser une référence, empêcher un contrôle ActiveX de se charger ou faire disparaître un pilote 32 bits.
Le plus souvent, la raison de changer est d'ordre pratique. Le fichier se trouve sur un lecteur partagé, une ou deux personnes savent comment il fonctionne, il est inutilisable hors du bureau sans bureau à distance, et il approche la limite de 2 Go d'un fichier Access.
- Windows 10, Access 2016 et Access 2019Fin du support Microsoft
- Access 2021 et Office 2021Fin du support Microsoft
Ce que nous migrons
Tout ce qui fait fonctionner la base, pas seulement les tables.
Tables et relations
Types de données, clés primaires, index, relations avec intégrité référentielle, règles de validation et valeurs par défaut. Les champs NuméroAuto deviennent des colonnes d'identité et conservent leurs valeurs : vos numéros de facture et de commande ne changent pas.
Requêtes
Requêtes sélection, ajout, mise à jour, suppression et analyse croisée, y compris celles qui lisent des valeurs dans des formulaires ouverts. Chacune est réécrite pour la nouvelle base et vérifiée par rapport aux résultats de l'originale.
Formulaires et sous-formulaires
Écrans de saisie, formulaires continus, listes déroulantes dépendantes, présentations maître-détail. Ils deviennent des pages web avec les mêmes champs, dans le même ordre.
États
États regroupés avec totaux et sauts de page, étiquettes, et les documents que vous imprimez ou envoyez en PDF, comme les factures et les bons de livraison.
Modules VBA et macros
Code des formulaires, modules standard, AutoExec et macros incorporées. Les règles métier passent côté serveur, où elles s'appliquent de la même façon à tous les utilisateurs.
Tables liées et données externes
Liaisons vers d'autres fichiers Access, des feuilles Excel, des sources ODBC et des listes SharePoint, ainsi que les imports et exports que quelqu'un lance chaque semaine.
À quoi ressemble la version web
- Tableau de bord
- Ordres de réparation312
- Clients1 148
- Véhicules
- Pièces
- Factures
Révision annuelle. Plaquettes de frein avant. Contrôle de la climatisation.
| Pièce | Qté | Prix | Montant |
|---|---|---|---|
| Filtre à huile | 1 | 14,90 € | 14,90 € |
| Huile moteur 5W-30 (l) | 4,5 | 11,20 € | 50,40 € |
| Plaquettes de frein AV | 1 | 64,50 € | 64,50 € |
| Filtre à air | 1 | 18,60 € | 18,60 € |
| Main-d'œuvre (h) | 2,5 | 54,00 € | 135,00 € |
| Total | 283,40 € | ||
| Pièce | Qté | Prix | Montant |
|---|---|---|---|
| Filtre à huile | 1 | 14,90 € | 14,90 € |
| Huile moteur 5W-30 (l) | 4,5 | 11,20 € | 50,40 € |
| Plaquettes de frein AV | 1 | 64,50 € | 64,50 € |
| Filtre à air | 1 | 18,60 € | 18,60 € |
| Main-d'œuvre (h) | 2,5 | 54,00 € | 135,00 € |
Un ordre de réparation de garage tel qu'il pourrait se présenter sous Access 97, puis le même écran en application web.
Faites glisser la poignée, ou utilisez les flèches du clavier.
Ce que devient chaque élément
- Dans Access: Tables de la base dorsale .accdb ou .mdb
- Dans l'application web: Tables SQL Server ou MySQL, avec les mêmes clés et relations
- Dans Access: Requêtes enregistrées
- Dans l'application web: Vues, procédures stockées ou requêtes dans l'application
- Dans Access: Formulaires et sous-formulaires
- Dans l'application web: Pages web avec les mêmes champs, dans n'importe quel navigateur
- Dans Access: États
- Dans l'application web: Pages imprimables et fichiers PDF produits par le serveur
- Dans Access: VBA dans les événements des formulaires
- Dans l'application web: Contrôles et règles exécutés sur le serveur
- Dans Access: Un fichier de groupe de travail (.mdw), ou aucun identifiant
- Dans l'application web: Identifiants personnels avec rôles, et trace de qui a modifié quoi
Comment se déroule la migration
Analyse sous 48 heures
Vous nous envoyez une copie du fichier .mdb ou .accdb (frontale et dorsale si la base est fractionnée), avec des données fictives à la place des vraies si vous préférez. Sous 48 heures, nous vous répondons par un rapport écrit : ce que fait le programme aujourd'hui, où se situent les risques, comment s'organiserait la version web, un prix ferme pour un module pilote et une estimation pour le reste. L'analyse est gratuite et ne vous engage à rien.
Module pilote
Nous réalisons une partie de l'application sur une copie de vos données réelles, en général celle que vos équipes utilisent le plus. Elles s'en servent au quotidien avant que vous décidiez de la suite.
Tests automatisés ancien contre nouveau
Nous exécutons les requêtes et les états sur la nouvelle base et comparons le nombre d'enregistrements, les totaux et les chiffres imprimés avec ceux d'Access. Chaque règle identifiée fait l'objet d'un test automatisé qui fournit les mêmes entrées à l'ancien programme et à la nouvelle application, puis vérifie que les résultats concordent. Vous recevez les résultats des tests.
30 jours en parallèle
Une fois l'application complète livrée, la base Access reste en service à ses côtés pendant 30 jours. Toute différence apparaît tant que l'ancien programme est encore là, et nous la corrigeons dans le cadre du prix convenu.
Les pièges habituels, et comment nous les traitons
Le SQL de Jet et d'ACE n'est pas du SQL standard
Access utilise
*et?comme caractères génériques dansLIKE, là où SQL Server et MySQL utilisent%et_. Il écrit les dates entre deux#et stockeTruesous la forme -1. Des fonctions commeIIf,Nz,FormatouDateSerialn'ont pas d'équivalent direct. Recopier le texte SQL tel quel donne des requêtes qui échouent ou, pire, qui renvoient d'autres lignes. Nous traduisons chaque requête et comparons ses résultats à ceux de l'originale.Fonctions de domaine dans les boucles et les requêtes
DLookup,DCountetDSumsont pratiques, mais chaque appel lance une requête distincte. Dans un formulaire continu ou au sein d'une autre requête, elles peuvent s'exécuter des milliers de fois pour un seul écran. Dans la version web, elles deviennent des jointures et des regroupements que le serveur de base de données traite en une seule passe.Requêtes qui lisent dans des formulaires ouverts
Un critère comme
[Forms]![frmOrders]![txtCustomerID]ne fonctionne que si ce formulaire est ouvert, sur ce poste. Nous transformons ces références en paramètres, pour que la même requête serve à n'importe quelle page ou n'importe quel état.Champs Oui/Non, Monétaire et Date/Heure
Access stocke Oui/Non sous la forme 0 et -1, le type Monétaire avec quatre décimales, et les dates comme des nombres qui peuvent aussi contenir une heure. Sans précaution, les totaux dérivent de quelques centimes ou un filtre sur le 31/03 ne renvoie plus rien. Nous faisons correspondre chaque type de champ explicitement et comparons les totaux après chaque transfert.
Champs pièce jointe, à valeurs multiples et listes de choix
Ces types de champs n'existent que dans le format .accdb et cachent des tables supplémentaires. Nous les transformons en tables liées ordinaires, et les pièces jointes en fichiers stockés et référencés dans la base.
Une frontale copiée sur chaque poste
Beaucoup de bases reposent sur une copie de la frontale sur chaque poste, parfois dans des versions différentes, avec des chemins vers la dorsale sur un lecteur réseau. Pendant l'analyse, nous établissons quelle copie fait foi et quels chemins, imprimantes et compléments le code suppose.
Prix et paiement
Analyse
Gratuite
écrite, sous 48 heures
Module pilote
1 000–1 500 €
en général, réglé 50 % au démarrage et 50 % à la validation
L'analyse est gratuite. Si vous décidez de ne pas donner suite, vous gardez le rapport et ne devez rien.
Les prix sont fermes et convenus par écrit avant le démarrage. Si le périmètre change, nous vous envoyons un nouveau devis écrit et attendons votre accord avant de réaliser le travail supplémentaire.
Pour une migration complète, nous visons un prix inférieur de 40 à 60 % au devis habituel d'une agence. C'est possible parce que nous sommes un petit studio, sans locaux à payer ni équipe commerciale.
Prix hors TVA.
Une vraie migration, vérifiée par des tests
Northwind est la base d'exemple que Microsoft fournissait avec Access, pas l'un de nos clients. Nous en avons migré une copie publique vers SQLite et PostgreSQL, comparé chaque table et chaque requête à l'original par des tests automatisés, et construit une application web qui fonctionne sur le résultat. L'étude de cas donne les chiffres, le rapport d'équivalence détaille chaque contrôle.
Rapport d'équivalence (en anglais) · Aperçu cliquable et analyse d'exemple (démo)

Questions fréquentes
Pouvons-nous continuer à utiliser Access pendant la réalisation ?
Oui. Vous continuez à travailler dans la base comme d'habitude. Avant la mise en production, nous transférons à nouveau les données depuis la dernière copie, et la base reste en service 30 jours aux côtés de la nouvelle application.
Pourrions-nous garder les formulaires Access et ne migrer que les données vers SQL Server ?
Oui, et pour certaines entreprises c'est la bonne première étape : les tables passent sur SQL Server et la frontale Access s'y connecte. Cela règle les problèmes de taille et de stabilité, mais pas l'accès à distance ni la dépendance à Office. L'analyse indique quelle option convient à votre cas.
Notre base est un .mdb d'Access 97 ou 2003. Est-ce un problème ?
Non. Nous travaillons aussi bien avec des fichiers .mdb qu'avec des .accdb. Si une sécurité au niveau utilisateur a été mise en place dans un ancien .mdb, il nous faudra aussi le fichier de groupe de travail (.mdw), et nous vous le signalons avant tout envoi.
Que deviennent nos états ?
Chaque état est reconstruit sous forme de page imprimable ou enregistrable en PDF, avec les mêmes regroupements et les mêmes totaux. Les tests de comparaison vérifient les chiffres des nouveaux états par rapport à ceux d'Access.
Combien de personnes peuvent utiliser la version web en même temps ?
Cela dépend du serveur de base de données plus que de l'application, et SQL Server ou MySQL supportent bien plus d'utilisateurs simultanés qu'un fichier Access partagé. L'analyse recommande un hébergement adapté à votre nombre d'utilisateurs.
Où l'application sera-t-elle hébergée ?
Sur le serveur ou le service cloud de votre choix, ou sur un hébergement que nous mettons en place pour vous. Nous utilisons des technologies courantes, C# avec ASP.NET Core ou PHP avec MySQL, pour que votre prestataire informatique puisse en assurer l'exploitation.
Nos autres services
- Excel VBA vers application webClasseurs avec macros, UserForms et feuilles liées transformés en application web multi-utilisateur.
- Migration d'applications VB6Programmes Visual Basic 6 portés en C# et sur le web, avec ou sans le code source.
- Migration d'applications DelphiProgrammes Delphi sur BDE, Paradox ou dBase repris dans une application web sur base SQL.
- Modernisation .NET (WinForms, WebForms)Applications WinForms et ASP.NET Web Forms portées vers ASP.NET Core, en gardant ce qui fonctionne.
- Logiciels sur mesure et intégrationsNouvelles applications métier, intégrations par API REST, migration de données et maintenance.
Contact
Par e‑mail :
riccardo@Envoyez-nous une copie de la base, avec des données fictives si vous préférez, ou une courte description de ce qu'elle fait. Nous vous répondons sous un jour ouvré.
Nous travaillons depuis l'Italie.