En síntesi: Adaptació d’aplicacions Microsoft Access de 32 bits a 64 bits sense perdre funcionalitats
A InFoAL solucionem els errors de compilació i execució que bloquegen les teves bases de dades Access en actualitzar equips a Microsoft 365 o Office de 64 bits. Refactoritzem totes les crides a l’API de Windows (Declare PtrSafe Function, punters LongPtr / LongLong), reparem referències trencades i substituïm controls ActiveX obsolets de 32 bits per garantir compatibilitat total.
Moltes aplicacions Microsoft Access empresarials van ser desenvolupades durant anys en entorns Office de 32 bits. Quan l’empresa renova ordinadors i passa a Microsoft 365 o a versions modernes d’Office de 64 bits, comencen a aparèixer errors inesperats que impedeixen treballar: compilacions que fallen en obrir el fitxer, controls que deixen de funcionar, referències trencades o codi VBA que s’atura. A InFoAL adaptem aplicacions Access antigues perquè funcionin en entorns de 64 bits (o en entorns mixtos 32/64 bits) amb el menor impacte possible sobre l’operativa del negoci.
En moltes empreses, Access continua sent la base de petites i mitjanes aplicacions crítiques. Per això aquests serveis no s’han d’abordar com a pedaços improvisats, sinó com a intervencions tècniques rigoroses sobre sistemes que sostenen processos de negoci reals. El nostre enfocament combina domini profund de VBA, experiència en entorns heretats i proves exhaustives.
Per què apareixen errors en passar Access a 64 bits
El problema més habitual no està en Microsoft Access com a producte, sinó en l’arquitectura amb què van ser construïdes les aplicacions heretades. Durant més de dues dècades era estàndard utilitzar declaracions API de Windows pensades exclusivament per a 32 bits (user32, kernel32, shell32, comdlg32), controls ActiveX antics (MSCOMCTL.OCX, MSCAL.OCX), llibreries DAO/ADO específiques o fitxers compilats .mde/.accde lligats a 32 bits. Tot això funciona durant anys i es trenca en l’instant en què IT instal·la Office de 64 bits.
La fallada més comuna apareix en les crides Declare Function a l’API de Windows: mostra el missatge «Error de compilació: El codi d’aquest projecte s’ha d’actualitzar per utilitzar-se en sistemes de 64 bits». En 64 bits els punters de memòria i identificadors de finestra (`hWnd`, `hDC`) passen de 32 bits (`Long`) a 64 bits (`LongPtr`), de manera que no n’hi ha prou d’afegir la paraula PtrSafe sense revisar els tipus de dades, ja que això provocaria tancaments bruscos d’Access o corrupció de memòria.
Per a una empresa això suposa un bloqueig immediat: el sistema continua sent imprescindible per facturar o gestionar el negoci, però el parc informàtic avança cap a Windows 11 i Microsoft 365 de 64 bits. Per això la migració tècnica d’Access a 64 bits és avui una intervenció imprescindible.
Com abordem l’adaptació d’Access a entorns moderns
La nostra feina consisteix a auditar de forma sistemàtica tots els mòduls estàndard, mòduls de classe i codi darrere de formularis i informes per detectar cada dependència de 32 bits. Analitzem el codi VBA7, les referències externes del projecte, els controls ActiveX inserits en pantalles i els processos automatitzats que interactuen amb Windows, Excel, Outlook, PDF o impressores.
A partir d’aquest inventari tècnic corregim les declaracions API i estructures `Type` amb suport natiu per a 64 bits (o compilació condicional `#If Win64 Then … #Else` si a l’empresa conviuen equips de 32 i 64 bits), adaptem punters a LongPtr, reemplacem controls ActiveX obsolets per components natius d’Access i validem cada flux funcional.
L’objectiu no és només que el fitxer torni a obrir-se sense avisos vermells, sinó que l’empresa pugui continuar utilitzant i mantenint la seva aplicació Access a Microsoft 365 durant molts anys de forma estable.
Aspectes tècnics crítics en una migració d’Access a 64 bits
A nivell d’enginyeria, la feina se centra en tres àrees crítiques. La primera és el codi VBA i les crides a DLLs del sistema, assegurant que cada paràmetre de punter (`hWnd`, `lpString`, `lpRect`, callbacks) utilitzi `LongPtr` evitant desbordaments de pila. La segona són les referències i llibreries COM, actualitzant proveïdors antics com `Microsoft.Jet.OLEDB.4.0` cap a `Microsoft.ACE.OLEDB.12.0/16.0` i controladors ODBC de 64 bits. La tercera són els controls ActiveX heretats (selectors de data antics, TreeView, ListView, barres d’estat) que no existeixen en 64 bits i s’han de substituir netament.
També revisem el context real de desplegament als llocs de treball: si conviuen ordinadors antics de 32 bits amb equips nous de 64 bits, implementem directives de compilació condicional (`#If VBA7 And Win64 Then`) perquè un únic codi font funcioni en tots dos entorns sense duplicar manteniments.
Quan l’adaptació s’executa amb rigor tècnic, l’empresa desbloqueja l’actualització de tot el seu parc informàtic i elimina la dependència de versions obsoletes d’Office.
Taula d’errors freqüents en obrir Access de 32 bits a Office 64 bits i la seva solució
| Error en Obrir o Executar en 64 bits | Causa Tècnica a la Base de Dades | Solució Aplicada per InFoAL |
|---|---|---|
| `Compile error: The code in this project must be updated for use on 64-bit systems` | Sentències `Declare Function` / `Declare Sub` d’API Windows sense atribut `PtrSafe` ni punters de 64 bits | Refactorització completa d’APIs i estructures `Type` amb `PtrSafe`, `LongPtr` i condicionals `#If Win64` |
| Tancament sobtat d’Access (Crash) després d’afegir `PtrSafe` manualment | S’ha afegit `PtrSafe` però s’han deixat handles (`hWnd`, punters de memòria) com a `Long` (32 bits) truncant la memòria | Auditoria paràmetre per paràmetre segons especificació Win32/Win64 SDK |
| `ActiveX component can’t create object` (Error 429) o quadres en blanc en formularis | Ús de controls OCX de 32 bits obsolets (`MSCAL.OCX`, `MSCOMCTL.OCX`, CommonDialog ActiveX) | Substitució pel selector de dates natiu d’Access, APIs natives de diàleg de fitxers (`FileDialog`) o controls moderns |
| Error en obrir un fitxer compilat `.accde` o `.mde` en un PC nou | Els fitxers compilats `.accde`/`.mde` en 32 bits no poden executar-se en un motor Access de 64 bits | Migració del codi font original `.accdb`/`.mdb` i generació de compilats específics per a 64 bits |
| Fallada en connexions a dades externes o SQL Server després de canviar d’Office | Ús de drivers ODBC de 32 bits (DSN de 32 bits) o proveïdor `Jet.OLEDB.4.0` no suportat en 64 bits | Actualització de cadenes de connexió ConnectionString a drivers ODBC de 64 bits i `ACE.OLEDB` |
Casos on aquest servei sol aportar més valor
Aquest tipus d’intervenció aporta un valor immediat en empreses que estan renovant la seva infraestructura informàtica o migrant a llicències corporatives de Microsoft 365:
- Aplicacions Access amb codi VBA que van deixar de compilar el mateix dia en què es van actualitzar els equips a Office 64 bits.
- Sistemes que utilitzen automatització OLE/COM amb Microsoft Excel, Word, Outlook o generació de PDFs.
- Bases de dades veteranes amb controls ActiveX heretats (calendaris, arbres, quadres de diàleg de selecció de fitxers).
- Entorns empresarials mixtos on alguns usuaris encara tenen Office 32 bits i d’altres ja treballen a Windows 11 amb Office 64 bits.
Quan convé iniciar la migració de 32 a 64 bits
L’adaptació a 64 bits convé plantejar-la de forma preventiva abans de desplegar equips nous o actualitzar Microsoft 365, evitant així que els usuaris es trobin amb l’aplicació bloquejada el dilluns al matí.
Si l’error ja ha aparegut en un o diversos ordinadors, no reinstal·lis versions antigues d’Office com a pedaç temporal: envia’ns una còpia del fitxer i l’adaptarem de forma definitiva.
Beneficis directes per a l’empresa
- Compatibilitat 100 % garantida amb Microsoft 365, Office 2021/2024 i Windows 11 de 64 bits.
- Eliminació del bloqueig tecnològic per al departament de sistemes (IT).
- Possibilitat de coexistència 32 i 64 bits durant la transició d’equips de l’empresa.
- Eradicació d’errors de compilació, tancaments inesperats i referències trencades.
- Conservació íntegra de la teva aplicació, formularis, informes i dades sense refer el sistema.
Necessites valorar aquest servei per a migrar Access de 32 a 64 bits?
Analitzem el teu cas mitjançant una sessió de Diagnòstic Remot gratuït i sense compromís (sota contracte de confidencialitat NDA) per donar-te una valoració tancada.
Serveis relacionats dins del nostre clúster Access
Manteniment d’aplicacions Microsoft Access
Suport continu per assegurar que futures actualitzacions d’Office o Windows mai aturin el teu programa.
Auditoria tècnica de bases de dades Access
Inventari complet de mòduls VBA, crides API, controls ActiveX i referències abans de migrar.
Desenvolupador Microsoft Access per a empreses
Ampliació de mòduls i modernització de formularis i informes a la teva aplicació ja adaptada a 64 bits.
Preguntes freqüents
Totes les aplicacions Access antigues fallen en passar a Office de 64 bits?
Les bases de dades molt simples que només tenen taules i macros bàsiques solen obrir sense canvis, però la immensa majoria d’aplicacions empresarials que inclouen codi VBA avançat, crides a l’API de Windows (Declare Function), selecció de fitxers, controls ActiveX o integracions requereixen adaptació tècnica.
N’hi ha prou d’afegir la paraula ‘PtrSafe’ a les funcions Declare perquè funcioni en 64 bits?
No. Afegir ‘PtrSafe’ sense actualitzar els tipus de dades dels punters i handles de memòria (canviant Long per LongPtr en els arguments corresponents i en les estructures Type) fa que el codi compili, però provoca tancaments inesperats (crashes) o corrupció de memòria en executar-se.
És millor desinstal·lar Office de 64 bits i tornar a instal·lar Office de 32 bits?
A curt termini pot servir com a salvavides d’emergència durant uns dies, però avui Microsoft instal·la 64 bits per defecte i moltes eines modernes (com complements pesats d’Excel o integracions corporatives) requereixen 64 bits. Adaptar l’aplicació Access és una inversió petita i definitiva.
Es pot fer que el mateix fitxer Access funcioni alhora en ordinadors de 32 bits i de 64 bits?
Sí, sempre que es treballi amb format no compilat (.accdb / .mdb) o es generin els compilats corresponents, utilitzant directives de compilació condicional (#If VBA7 And Win64 Then) en el codi VBA. Així conviuen perfectament tots dos tipus d’equips.
Què passa si tenim un fitxer bloquejat .mde o .accde de 32 bits?
Per passar un .accde o .mde a 64 bits és necessari disposar del fitxer font editable (.accdb o .mdb) per actualitzar el codi VBA i tornar-lo a compilar en 64 bits. Si no localitzeu el font, consulta’ns per analitzar les opcions de recuperació o reconstrucció.
Es perd algun formulari, informe o dada en migrar Access a 64 bits?
No es perd absolutament cap dada, taula, consulta, formulari ni informe. L’operativa visual per als usuaris continua sent idèntica (o millorada si substituïm algun control ActiveX antic per un de modern).
Explora totes les nostres solucions especialitzades en Microsoft Access
- ★ Consultoria Microsoft Access (Pàgina Principal)
- → Optimització de bases de dades Microsoft Access
- → Migrar Microsoft Access de 32 bits a 64 bits
- → Migració de Microsoft Access a SQL Server
- → Integració de Microsoft Access amb APIs
- → Manteniment d’aplicacions Microsoft Access
- → Reparar base de dades Microsoft Access
- → Separar Access en Frontend i Backend
- → Auditoria tècnica de bases de dades Access
- → Exportar dades Access a JSON
- → Desenvolupador Microsoft Access per a empreses
- → Connectar agents IA a bases de dades de Microsoft Access
- → Treball híbrid de Terminals Access i Pàgines Web
- → Adaptar Microsoft Access a VeriFactu sense canviar de programa
- → Estudi gratuït, diagnòstic remot i com pressupostem