Comment corriger l'erreur " incohérence de type dans une expression " dans MS Access ?


L'erreur Access 3615 - Incohérence de type dans une expression  indique que l'application  ne peut pas associer une valeur d'entrée avec la valeur de type de données attendue. L'erreur peut se produire lorsque vous créez une relation de table dans Access ou que vous utilisez un lien vers les requêtes. Elle se produit généralement lorsque les types de données sont incompatibles. Vous pouvez recevoir cette erreur dans les cas suivants :

  • Si vous utilisez des fonctions intégrées telles que Cstr(), cDate(), Cint(), etc. dans des requêtes VBA.
  • Lorsque vous créez des requêtes dans le code VBA pour effectuer des calculs ou comparer les champs de deux fichiers de base de données dans le projet VBA. 
  • Importer des données à partir de sources externes (par exemple, Excel).
  • Exportation de données de l'application Access vers d'autres sources.
  • Lorsque vous définissez la relation entre les tables de la base de données Access.
  • Si vous essayez d'effectuer des opérations sur un fichier de base de données endommagé ou corrompu.

Quelle est la cause de l'erreur " L'incohérence de type dans une expression " dans MS Access ?

Cette erreur peut se produire si vous essayez de créer une relation dans deux tables dont les types de données ne correspondent pas. De nombreuses autres raisons peuvent conduire à cette erreur, par exemple

  • Formats de date et d'heure incorrects
  • Syntaxe incorrecte des fonctions intégrées dans vos requêtes ou expressions en VBA
  • Format incorrect des fonctions de conversion des données
  • Problème avec les requêtes SQL (utilisation des jointures)
  • Problèmes de formatage des types de données lors de l'importation ou de l'exportation de données dans Access
  • Les données que vous saisissez dans le fichier de base de données ne correspondent pas aux règles de validation définies.
  • Les objets des fichiers de base de données sont endommagés
  • La base de données est endommagée ou corrompue

Méthodes de correction de l'erreur "Type Mismatch in Expression" dans MS Access

Dans Access, l'erreur de correspondance de type de données peut se produire dans l'expression des critères si un signe de dollar ($) est compris dans les critères spécifiés pour un champ de devise dans la base de données. Vous pouvez essayer de supprimer le signe du dollar pour résoudre le problème. Si le problème ne peut être résolu, suivez les méthodes ci-dessous :

Méthode 1 : Vérifier l'incompatibilité des types de données dans les champs

L'erreur 3615 - Access datatype mismatch in criteria expression peut se produire si vous essayez de créer une relation entre deux tables dont les champs ont des types de données incompatibles. Assurez-vous que les types de données des tables des fichiers de base de données sont compatibles. Par exemple, si vous avez deux tables dans la base de données Access : "Client" et "Commande". Le champ ID dans la table "Client" et l'ID de la commande dans la table "Commandes" sont définis sur le type de données "Numéro de voiture". Si vous essayez de créer une relation entre deux tables, l'application Access lit ces types de données de numéro de voiture comme des types de données différents. Si le type de données Autonumber est défini dans le champ de la table, il génère automatiquement un numéro unique et séquentiel pour sa table, ce qui entraîne une incohérence. Vous pouvez utiliser un type de données ordinaire, tel qu'un nombre, au lieu du numéro automatique.

Voici les étapes à suivre pour modifier le type de données dans Access :

  • Ouvrez la base de données.
  • Allez dans l'espace de navigation et double-cliquez sur le tableau que vous souhaitez modifier.
  • Sélectionnez la vue de conception Cliquez sur le champ que vous souhaitez modifier, cliquez sur la liste déroulante et sélectionnez un nouveau type de données.
Sélectionnez la vue de conception
  • Enregistrez les modifications que vous avez apportées.

Méthode 2 : Vérifier les relations entre les tables

Vous pouvez également vérifier les relations entre les tables. La fenêtre Relations de table peut vous aider à reconnaître les problèmes liés aux divergences de type de données entre les champs liés et les relations. Pour ouvrir la fenêtre Relations, procédez comme suit :

  • Naviguez jusqu'à Fichier et cliquez sur
  • Sélectionnez la base de données souhaitée.
  • Dans l'onglet Outils de base de données, cliquez sur Relations.
Outils de base de données, cliquez sur Relations
  • Cliquez sur l'onglet Conception, puis sur Toutes les relations.
Conception
  • La fenêtre des relations affiche toutes les relations définies dans votre base de données.
  • Vérifiez et résolvez tout problème relationnel.  

Méthode 3 : Vérifier et corriger les requêtes

L'erreur " L'incohérence de type dans une expression " peut également se produire lors de l'exécution de requêtes (requête SQL spécifique, requête de paramètre, requête d'action ou requête de table croisée) dans la base de données. Elle apparaît généralement si vous utilisez une syntaxe incorrecte ou si les champs de connexion contiennent des types de données incorrects. Assurez-vous que vous utilisez les mêmes types de données dans les champs. Vous pouvez vérifier les champs liés dans vos requêtes pour résoudre le problème.

Méthode 4 : Vérifier le code VBA

L'erreur "Data type mismatch in an expression" (incompatibilité du type de données dans une expression) dans Access peut être due à une déclaration de variable et de méthode incorrecte et à une incompatibilité des types de données dans les variables du code VBA. Vous pouvez vérifier le code VBA et essayer de corriger les fautes de frappe et autres problèmes de syntaxe. Voici les instructions :

  • Ouvrez la base de données Access souhaitée.
  • Sélectionnez l'option Outils de base de données, puis Visual Basic.
  • Dans l'éditeur VBA, vous trouverez le projet et ses modules, objets, noms de formulaires, etc. dans la zone de navigation.
  • Vous pouvez cliquer sur l'objet concerné pour afficher le code correspondant.
  • Vérifiez toutes les syntaxes et les requêtes dans le code et apportez des modifications si nécessaire.

Méthode 5 : Réparation de la base de données Access

Le message d'erreur "Data type match in criteria expression" peut se produire si les différences de type de données sont dues à une corruption du fichier de base de données Access. Si une partie de votre fichier MDB ou ACCDB est corrompue, vous pouvez la réparer à l'aide de l'utilitaire "Compress and Repair" de MS Access. Apprenez à utiliser cet utilitaire ici :

  • Ouvrez Microsoft Access.
  • Double-cliquez sur l'option Base de données vide dans la fenêtre Modèles.
  • Cliquez sur Fichier puis sur Fermer.
  • Allez dans Outils de base de données et cliquez sur Compacter et réparer la base de données.
  • Dans la fenêtre "Base de données à compresser", sélectionnez la base de données que vous souhaitez compresser et réparer. Cliquez sur Compresser.
  • Sélectionnez un bureau de stockage pour le fichier de base de données réparé et cliquez sur Enregistrer.
  • Attendez la fin du processus et vérifiez ensuite si l'erreur a été corrigée.

Si l'utilitaire Compact and Repair ne peut pas réparer la base de données Access endommagée, il est préférable d'utiliser un utilitaire professionnel de réparation de base de données Access tel que Stellar Repair for Access. L'outil peut réparer les fichiers de base de données Access (.mdb ou .accdb) gravement endommagés et remettre tous les objets en place tout en préservant l'intégrité des données. L'outil est compatible avec toutes les versions de MS Access, y compris MS Access 2019.

Fermeture

L'erreur de l'incohérence de type dans une expression  peut être due à des problèmes de type de données dans les champs et les requêtes. Vous pouvez utiliser les méthodes décrites dans cet article pour résoudre le problème. Si la corruption du fichier de base de données est à l'origine de cette erreur, essayez Stellar Repair for Access. Cet outil peut réparer les fichiers .mdb et .accdb et remettre toutes les données dans un nouveau fichier de base de données tout en conservant le formatage d'origine.



Was this article helpful?
À propos de l'auteur
author image
Himanshu Shakya

Himanshu is a Tech Enthusiast & Blogger at Stellar and having knowledge of Japanese Language. And apart from this in his spare time he likes playing Chess.

Table des matières

POURQUOI STELLAR® EST LE LEADER MONDIAL

Pourquoi choisir Stellar?
  • 0M+

    CLIENTS

  • 0+

    Des années d'excellence

  • 0+

    INGÉNIEURS R&D

  • 0+

    PAYS

  • 0+

    TÉMOIGNAGES

  • 0+

    RÉCOMPENSES REÇUES