Skip to content
DeutschBook an intro call

How-to · Business software & processes

How to replace Excel with a web app

In short

Replace Excel when several people edit the same data at once, not everyone should see everything, changes must be traceable or only one person understands the file. Take stock of your files and design a data model. Check the data and migrate it after a trial run, keep both systems running in parallel only briefly and train your team.

Key takeaways

  • Excel is optimized for analysis and calculation, Microsoft says. Data several people edit at once fits better in a database such as Access.
  • Microsoft says only one person at a time can edit an Excel workbook in a shared network folder. Co-authoring needs OneDrive or SharePoint.
  • Worksheet protection isn’t meant as a security feature, according to Microsoft. Use role-based permissions and a change log in the new app.
  • Never clean up the original. Check a copy, migrate it in a trial run and then compare row counts, totals and a sample.
  • Run old and new in parallel only with a fixed end date, and decide first which one leads. Otherwise your team maintains two sets of data.

How can you tell Excel has reached its limits as a database?

Excel reaches its limits as a database as soon as several people maintain the same data at the same time. Other signs: not everyone should see everything, changes need to be traceable, errors in the data create extra work, or only one person understands the file. Microsoft describes Excel as optimized for analysis and calculation.

An Excel file serves as a database when your team keeps a shared record in it, such as its customers or orders. Microsoft explains the difference using its own database, Access. Users of an Access database collaborate on a set of data, while users of an Excel workbook collaborate on a document (Microsoft on Access or Excel (external site)).

Why: Each of these signs costs working time or puts your data at risk.

Five signs and what Excel offers for each, as of November 2026
SignHow it shows upWhat Excel offers and where it stops
Several people work at the same timeThe team waits until the file is free, or saves copies with the date in the file name.Co-authoring works only if the file is stored in OneDrive or SharePoint in Microsoft 365, and not in Excel 2016, 2019 or 2021 LTSC. In a shared network folder, only one person at a time can edit the file.
Not everyone should see everythingPrices, terms or personal details sit in the file for anyone to see.Protection for the file, the workbook and individual sheets. Sheet protection isn’t meant as a security feature, and hidden rows can be unhidden.
Changes need to be traceableNobody knows who changed a value, and an error only comes to light weeks later.Show Changes in Microsoft 365 covers the past 365 days. Formatting changes and hiding cells aren’t listed, and the history can be cleared for everyone.
Data errors create extra workCustomers are listed twice, postal codes have lost their leading zero, dates are stored as text.Data validation only works when people type values in directly, not when they copy or fill them. Excel doesn’t enforce relationships between tables.
Only one person understands the fileOne colleague knows the formulas, macros and special cases, and work stalls while she’s on vacation.Germany’s Federal Office for Information Security (BSI) advises defining responsibilities for homegrown macro tools and documenting them.

Sources for the table, all from Microsoft except the last row: co-authoring (external site), locked files (external site), protection and security (external site), Document Inspector (external site), Show Changes (external site) and help with Show Changes (external site), leading zeros (external site), data validation (external site); BSI, module APP.1.1 (external site) (in German).

Research in genomics shows how common automatic conversion errors are. In 30.9% of 11,117 articles with gene lists in Excel supplements, gene names had been converted, for example into dates (Abeysooriya et al., 2021 (external site)).

How to do it:

  1. Go through the five signs with the people who work with the file every day. For each sign, note an example from recent weeks.
  2. Check where the file is stored and which version of Excel everyone uses. Support for Excel 2016 and 2019 ended on October 14, 2025, and for Excel 2021 on October 13, 2026 (end of support in 2025 (external site), end of support in 2026 (external site)).
  3. Estimate how many hours a week go into waiting, cross-checking and corrections. Our how-to Digitizing business processes shows how to measure that.

Example: Say a company with 15 employees keeps its orders in a file on a shared network drive. The office team and the technicians wait several times a day for the file to become free. Anyone can unhide the prices on the hidden sheet, and only one colleague understands the macro that assigns order numbers.

Common mistake: The team judges the limit by the number of rows. According to Microsoft, a worksheet holds 1,048,576 rows (Excel specifications and limits (external site)). Problems with simultaneous access, permissions and data quality start much sooner.

Done when you know for each sign whether it applies, with an example and an estimate of the hours it costs per week.

What are your options, and which one fits your business?

There are four options: tidy up the Excel file and store it in Microsoft 365, use off-the-shelf software, build an app on a low-code platform, or have a web app developed. Check them in this order and choose the first one that meets all your must-have requirements. If off-the-shelf software fits, we’ll recommend it.

Four options, from simple to complex, in our assessment
OptionFits ifLimit
Tidy up Excel: format the list as a table, check entries with data validation, store the file in OneDrive or SharePointa few people maintain a simple list without links to other tablesPermissions per person, change logs and relationships between tables stay as they are in Excel.
Off-the-shelf software: a ready-made product for customers, orders or your industrya product meets all must-have requirements through its settingsYour process adapts to the product, and the license or subscription is an ongoing cost.
Low-code platform: an app built from ready-made components, often in the vendor’s cloudan internal app with manageable rules and few usersLicenses are an ongoing cost, and the app stays tied to the platform.
Custom web app: developed for your processno product covers the process, or many people work with their own rules and integrationsHigher upfront cost and ongoing maintenance; you help steer the project.

For admin panels and back-office tools on your existing data, see our page on internal tools.

For keeping track of items in a simple list with limited collaboration, Microsoft still recommends Excel. Version history works only for files stored in OneDrive or SharePoint (Microsoft on previous versions (external site)). You can also combine options: Microsoft itself suggests storing data in a database such as Access and analyzing it in Excel.

How to do it:

  1. Write down your must-have requirements: data, roles and their permissions, rules and the programs the new system has to connect to. Our how-to on writing a software requirements specification includes a template.
  2. Check first whether the first option is enough. For a list that two or three people maintain, it may be.
  3. Test off-the-shelf products with a copy of your data that has names and contact details removed, and ask how you can export all of your data. Our comparison Build or buy software? shows when buying pays off and when building does. Our comparison CRM vs. ERP for small businesses shows which kind of product fits: a CRM, an ERP or industry-specific software.
  4. For a platform, add up the license costs over the planned lifetime. Our comparison Low-code vs. custom development shows where low-code is enough.
  5. For a custom web app, agree up front that the source code, documentation and access credentials stay with you. Our how-to Avoiding developer lock-in shows how.

In a process check, we map your process with you and first assess whether off-the-shelf software fits. Our custom business software page explains what’s in a process check.

Example: In the example company, the office team should be able to change prices, while the technicians should see only their own assignments. Two industry-specific products it tests can’t handle the technicians’ inspection reports. The company decides on a web app that exchanges data with its invoicing software.

Common mistake: The product gets chosen before the must-have requirements are settled. If it fits poorly, users may turn to other programs, for example back to a list of their own. The BSI describes this risk in its module APP.6 (external site) (in German).

Done when your must-have requirements are in writing and you’ve noted for each option whether it meets them.

How do you take stock of your Excel files?

List every file, sheet and column that should move to the new system, each with its purpose and the person who maintains it. Record formulas, macros, links to other files and hidden sheets. Also clarify how long and in what form you’ll keep the old file.

Why: Anything missing from the inventory will be missing from the new app later. The V-Modell XT Bund is the German federal administration’s reference model for systems development projects. When a legacy system is replaced, the model calls for a legacy system analysis. It identifies the data model and assesses the quality of the data (V-Modell XT Bund, version 2.3 (external site), in German).

How to do it:

  1. Gather every file the process uses, including copies on desktops and lists that individual people keep on the side.
  2. For each sheet and column, note what it contains, who maintains the values and who needs them.
  3. Look for anything hidden: the Document Inspector (File › Info › Check for Issues › Inspect Document) finds hidden rows, columns and worksheets. Don’t remove anything there, because Microsoft warns that this can change the results of formulas.
  4. Check whether the workbook pulls values from other files. The Workbook Links pane (Data › Queries and Connections › Workbook Links) lists these links (Microsoft on workbook links (external site)).
  5. Have someone explain each macro to you, and write down what it does. The BSI advises documenting homegrown tools like these in Office programs.
  6. Ask your tax advisor which data in the file matters for tax purposes, and how long and in what form to keep the old file. Bring your inventory along.

Example: In the example company, the inventory covers the file OrderList.xlsx with an Orders sheet of 17 columns. Add to that a hidden sheet with prices, a link to the file Customers.xlsx and a macro that assigns order numbers. The technicians also keep their own list of assignments.

Common mistake: Only the main file gets inventoried. Then the separate lists are missing, and so is the rule the macro uses to assign numbers.

Done when every column has a purpose and an owner, every formula, macro and link is described, and the retention question is with your tax advisor.

How do you turn your spreadsheet into a data model?

Split the spreadsheet by subject, with one table for each kind of thing, such as customers, contacts, orders and line items. Every row gets a unique number, every piece of information is stored in only one place, and relationships connect the tables. These are the basic rules of database design as Microsoft describes them.

Why: In a list that has grown over time, the customer appears in every order row. If the customer’s address changes, every one of those rows has to be updated, and a row that gets missed contradicts the others. According to Microsoft, duplicate information increases the likelihood of errors and inconsistencies (Database design basics (external site)).

How to do it:

  1. Create a separate table for each kind of thing. If you keep typing the same information again and again, it belongs in a second table that’s linked to the first.
  2. Break up numbered columns such as “Item 1” to “Item 5.” According to Microsoft, they force an upper limit and make sorting harder. Line items get a table of their own.
  3. Break each piece of information into its smallest useful parts, such as street, postal code and city.
  4. Give every row a unique number that never changes. Names don’t work for this, because two customers can have the same name.
  5. For each field, define its type, whether it’s required and which values are allowed. Set up postal codes and numbers with a leading zero as text, because Excel automatically removes leading zeros from numbers.
  6. Decide which role may view and change which table. The BSI recommends granting permissions only as far as a task actually requires (BSI, module ORP.4 (external site), in German).
  7. Decide which changes the app logs: who made the change, when, and what the value was before. Protect the log itself against later changes. Roles, permissions and backups are part of that.
  8. Walk through the model with a few real cases before any coding starts. Microsoft also advises testing a design with sample data.
One list becomes one table for each kind of thing
One list becomes one table for each kind of thing Example from this section: Before, the customer, address and Item 1 to 5 appear in every row of the order list. After, there is a Customers table in which each customer has a permanent customer number and their details appear only once. Linked to it are the Contacts and Orders tables, several per customer; linked to Orders is the Line items table, any number per order. The table below maps each column in the list to its target. Before: one list Every order row repeats the customer, address and Item 1 to 5 one table for each kind of thing Customers permanent customer number; name, street, postal code, city only here Contacts several per customer, phone as text Orders several per customer; date, status Line items any number per order, amount as a number
The example company’s order list becomes a data model
Column in ExcelTarget in the new appRule
CustomerCustomers table, Name fieldRequired; every customer gets a permanent customer number
Contact, phoneContacts table, several per customerPhone number stored as text
Address in one cellStreet, postal code and city fieldsPostal code as text with five digits
Order dateDate field in the orderRequired, valid date
StatusDrop-down listonly “open,” “in progress” or “done”
Item 1 to 5, Amount 1 to 5Line items tableany number per order, amount as a number
Assigned toReference to a user accountPermissions by role
Prices on the hidden sheetPrices tableonly the office team may change them

Common mistake: The columns get copied over one to one. Then customers are duplicated in the new app just as they were in the file, and the “Item 1” to “Item 5” columns still impose an upper limit.

Done when every column in the inventory has a target or has been dropped on purpose, every row in every table has a unique number, and you’ve walked through the model with real cases.

How do you clean up and migrate the data?

Check a copy of the file for duplicate records, empty required fields and wrong formats, and clean up the copy. Migrate it in a trial run first, then compare the row counts, totals and a sample with the cleaned copy. Only when everything matches do you run the final migration.

Why: Errors carried over in the import often surface only much later. According to the BSI, input errors can lead to unwanted transactions that often go unnoticed for a long time (BSI, elementary threats (external site), in German).

How to do it:

  1. Work only with a copy, and label it clearly as a working copy, for example in the file name. The original stays unchanged and read-only until the retention question is settled. Read-only status alone isn’t always enough: data you have to retain must stay readable and analyzable for the entire retention period. If a service provider migrates the data for you, check with your data protection advisor which contracts you need.
  2. Check the copy with the formulas under From our work.
  3. For each duplicate, decide which record is correct and merge the details. According to Microsoft, the command for removing duplicates deletes them permanently and keeps only the first occurrence (Microsoft on removing duplicate values (external site)). That isn’t always the up-to-date record. Keep a change list of every cleanup that changes the content.
  4. For each field, note which column it comes from and how it gets converted, so you can trace the migrated data back to the original. The V-Modell plans a data migration in this much detail, too.
  5. Export each sheet separately, because Excel saves only the current worksheet to a CSV file (Microsoft on exporting to CSV (external site)).
  6. Before the trial run, note the row count and totals for each table, and compare them with the new app afterward. The people who work with the data also check a sample field by field, such as 50 randomly selected records.
  7. Define how you’ll know to abort and how you’ll restore the previous state. The V-Modell calls for this kind of rollback plan, too.

Example: The example copy holds 1,240 orders and 418 customers. After 27 duplicates are merged, 391 customers remain. After the trial run, the new app shows 1,240 orders and 391 customers, and the total matches to the cent. The sample turns up two dates stored as text. The team corrects them in the copy and repeats the trial run.

Common mistake: The cleanup happens in the original. Afterward, nobody knows what the file contained before.

Done when the row counts and totals match before and after the trial run, the sample shows no discrepancies and the rollback plan is in place.

How long should the old and new systems run in parallel?

As briefly as possible, and with a fixed end date. Decide beforehand which system leads: from the switch onward, you enter new data only in the new app, and the old file is just for looking things up. Also plan a way back in case the new app fails in the first few days.

Why: If both systems are kept up to date, their data soon stops matching. The V-Modell XT Bund calls running the old and new systems in parallel problematic because the data has to stay consistent. In general, it considers a phased rollout less risky than switching over in a single step.

How to do it:

  1. Choose how to switch: everyone on one cutover date, team by team, or one process first and then the next.
  2. For each type of data, decide where it’s entered and from what date. From that day on, the Excel file is read-only, for example through the folder permissions or a password to modify the file.
  3. Set the end date and the criteria for aborting, for example: the new app is unavailable two days in a row.
  4. On cutover day, migrate the changes made since the trial run and repeat the comparison.
  5. After that, keep the old file read-only, in the way you agreed with your tax advisor. Check that it stays readable and analyzable for the entire retention period, including its links and the software it needs.

Example: In the example company, the office team switches first. For two weeks, it enters orders only in the new app, and the technicians read them there. During that time, the technicians keep logging their assignments in their own list. Then the technicians switch too, and the old file is available read-only.

Common mistake: Everyone enters everything twice, in Excel and in the new app, and there’s no end date. After a few weeks, nobody knows which version is current.

Done when the switch is complete, everyone knows where to enter data, and the old file can only be read.

How do you train your team on the new system?

Train each role shortly before the switch, using its own real cases. Name one person on the team to answer questions, collect feedback during the first few weeks and check whether anyone still keeps a list alongside the new app. A list like that shows what the app is missing.

Why: According to the German federal government’s organization manual, process improvements often fail because the people involved don’t accept the new process. The more involved they were in developing it, the greater their acceptance usually is (organization manual on introducing new processes (external site), in German).

How to do it:

  1. Involve the people who maintain the file today as early as the data model. They know the special cases.
  2. Train role by role in a test environment with a copy of your data, using cases from the past week.
  3. Give each role one page of instructions: What’s new, where is everything, and who do you ask?
  4. Name a go-to person on the team, and collect questions and bugs in one place.
  5. After two weeks and again after four, check whether everyone is working in the new app. The manual recommends this check so that nobody gradually slips back into old routines.

Example: In the example company, the office team practices for an hour with five orders from the previous week, and the technicians practice with three assignments on a tablet. After two weeks, it turns out that the technicians are still collecting photos in a folder. So the app gets a field for attachments.

Common mistake: Training happens weeks before launch, with made-up data. By the time of the switch, most of it is forgotten, and the everyday special cases never came up.

Done when everyone has done their usual tasks in the new app and, four weeks after the switch, nobody keeps a separate list anymore.

Do the same steps work for replacing Microsoft Access?

The core steps are the same: inventory, data model, cleanup, parallel run and training. Unlike Excel, Access is a database with tables, relationships and record-level locking. However, Microsoft says it’s a Windows desktop program that comes only with certain Microsoft 365 plans. Support for Access 2016 and 2019 ended on October 14, 2025, and for Access 2021 on October 13, 2026.

Microsoft calls Access a relational database management system (Database design basics (external site)). When an Access database is stored in a shared network folder, it locks only the individual records that someone is editing (Microsoft on Access or Excel (external site)). Microsoft lists the support dates on its lifecycle pages for the end of support in 2025 (external site) and the end of support in 2026 (external site). Our how-to Replacing Microsoft Access covers what Access adds.

From our work: eight checks for your Excel file before the import

Use these checks to examine a copy of your file before the data moves to a new system. The formulas apply to row 2 of a list with its headers in row 1. Adjust the columns and ranges to fit your file.

The formulas use the English function names, with commas between arguments. Microsoft’s German help writes the same formulas with German function names and semicolons, for example ZÄHLENWENN instead of COUNTIF.

Eight checks before the import, formulas for row 2
CheckFormula or toolWhat the result means
Duplicate customer number=COUNTIF($A$2:$A$2000,A2)>1TRUE: the number appears more than once in the list.
Duplicate customer name=COUNTIF($B$2:$B$2000,B2)>1TRUE: possibly the same customer; compare the address and contact.
Empty required field=ISBLANK(C2)TRUE: the value is missing.
Extra spaces=LEN(B2)<>LEN(TRIM(B2))TRUE: spaces at the start or end, or double spaces between words
Postal code without its leading zero=LEN(D2)<5TRUE for a German postal code: fewer than five digits, such as 1067 instead of 01067
Date stored as text=ISNUMBER(E2)FALSE: not a real date, because Excel stores dates as numbers
Amount stored as text=ISTEXT(F2)TRUE: the amount is left out of every total, because SUM ignores text.
Value outside the allowed listData validation with a list of allowed values, then Circle Invalid DataExcel circles existing values that aren’t on the list.

We ran the eight checks on November 8, 2026, in Excel for Microsoft 365, on a test workbook with one deliberate error for each check. Each check flagged exactly the rows with its error.

Measured  · Excel for Microsoft 365 (16.0.20527), test workbook with one deliberate error per check

How to use the checks: Next to the list, add a helper column for each check, enter the formula in row 2 and drag it down. Then filter each helper column for the result that flags a problem. For the comparison after the trial run, note the number of rows with =COUNTA(A2:A2000) and the total of the amounts with =SUM(F2:F2000). The formulas point out anomalies. Whether two records really belong to the same customer is for the people who work with the data to decide.

Microsoft’s help pages describe COUNTIF (external site), lists in data validation (external site), the IS functions (external site), TRIM (external site), LEN (external site), SUM (external site) and COUNTA (external site). That Excel stores dates as sequential serial numbers is explained under the DATE function (external site). German postal codes have had five digits since 1993 (Germany’s Federal Archives on five-digit postal codes (external site), in German).

When we migrate data, we first agree with you on which data to migrate and how to clean up duplicate or incomplete records. These checks help you prepare for that.

Frequently asked questions

Can we keep using Excel for analysis?

Yes, according to Microsoft, Excel is well suited to analyzing data. Make sure the new app can export data as an Excel or CSV file. Then you pull the figures for your analysis from the app, and the spreadsheet is only a copy for calculations.

What about record retention under German tax rules?

Clarify that with your tax advisor before the switch, because the answer depends on your data. Whether a file has to be retained comes down to what it contains and how it’s used. Files with order data, prices or billing records may have to be kept. Bring your inventory: which files exist, what they contain and who maintains them. Also ask how traceable changes in the new app need to be. Until you have an answer, leave the old file unchanged.

What does it cost to replace a spreadsheet?

That depends on the option. Tidying up Excel mainly costs your team’s time. Off-the-shelf software and low-code platforms often come with ongoing fees, and a custom web app with a development price plus ongoing maintenance. Our cost guide How much does custom software development cost? shows what a first module of custom business software costs on the market. Our own packages are listed under pricing and packages for custom business software.

Sources

  1. Microsoft Support: Using Access or Excel to manage your data. . Accessed .
  2. Microsoft Support: Collaborate on Excel workbooks at the same time with co-authoring. . Accessed .
  3. Microsoft Support: Excel file is locked for editing. . Accessed .
  4. Microsoft Support: Protection and security in Excel. . Accessed .
  5. Microsoft Support: Remove hidden data and personal information by inspecting documents, presentations, or workbooks. . Accessed .
  6. Microsoft Support: Show changes made in a workbook. . Accessed .
  7. Microsoft Support: Get help with Show Changes in Excel. . Accessed .
  8. Microsoft Support: Keeping leading zeros and large numbers. . Accessed .
  9. Microsoft Support: More on data validation. . Accessed .
  10. Federal Office for Information Security (BSI): IT-Grundschutz-Kompendium, Edition 2023: Baustein APP.1.1 Office-Produkte (in German). . Accessed .
  11. Abeysooriya, Soria, Kasu, Ziemann (Deakin University): Gene name errors: Lessons not learned (PLOS Computational Biology 17(7): e1008984). . Accessed .
  12. Microsoft Learn: Ending Support in 2025. . Accessed .
  13. Microsoft Learn: Ending Support in 2026. . Accessed .
  14. Microsoft Support: Excel specifications and limits. . Accessed .
  15. Microsoft Support: View previous versions of Office files. . Accessed .
  16. Federal Office for Information Security (BSI): IT-Grundschutz-Kompendium, Edition 2023: Baustein APP.6 Allgemeine Software (in German). . Accessed .
  17. Informationstechnikzentrum Bund (ITZBund) on behalf of the Federal Government Commissioner for Information Technology: V-Modell XT Bund. Das Referenzmodell für Systementwicklungsprojekte in der Bundesverwaltung, Version 2.3 (in German). 2019. Accessed .
  18. Microsoft Support: Manage workbook links. . Accessed .
  19. Microsoft Support: Database design basics. . Accessed .
  20. Federal Office for Information Security (BSI): IT-Grundschutz-Kompendium, Edition 2023: Baustein ORP.4 Identitäts- und Berechtigungsmanagement (in German). . Accessed .
  21. Federal Office for Information Security (BSI): IT-Grundschutz-Kompendium, Edition 2023, Elementare Gefährdungen (in German). . Accessed .
  22. Microsoft Support: Filter for unique values or remove duplicate values. . Accessed .
  23. Microsoft Support: Import or export text (.txt or .csv) files. . Accessed .
  24. Federal Ministry for Digital Transformation and Government Modernisation (Organisationshandbuch): Organisationshandbuch, 2.3.7 Soll-Prozesse entwickeln und implementieren (in German). . Accessed .
  25. Microsoft Support: Use the COUNTIF function in Microsoft Excel. . Accessed .
  26. Microsoft Support: Apply data validation to cells. . Accessed .
  27. Microsoft Support: IS functions. . Accessed .
  28. Microsoft Support: TRIM function. . Accessed .
  29. Microsoft Support: LEN function. . Accessed .
  30. Microsoft Support: SUM function. . Accessed .
  31. Microsoft Support: COUNTA function. . Accessed .
  32. Microsoft Support: DATE function. . Accessed .
  33. Federal Archives (Bundesarchiv): Die Einführung der fünfstelligen Postleitzahlen (in German). Accessed .

Editorial note

Researched and drafted with AI assistance. Mohammad Alboush has not yet checked the sources, figures and claims.

Content not yet reviewed

Changes to this article

Show all 5 changes
DateTypeChange
First publicationArticle published
CorrectionCopyedited references, punctuation and terms. The statements remain the same.
UpdateAdded a chart and corrected the column count in the example: the list has 17 columns, not 14.
UpdateAdded notes on retention, labeling the copy, the change list and protecting the log.
UpdateClarified what Access adds beyond the core steps, with a link to the new how-to.

Spotted a mistake? Email us at kontakt@datafalke.de. We’ll fix it and log the change.

Your next step

Which spreadsheet slows your team down?

Describe the process in a few sentences. In the intro call, we’ll tell you whether a pilot makes sense.

Menu

Book an intro callDeutsch