Erreur d’exécution 13 : incompatibilité de type dans Excel Visual Basic : correctif

Erreur d’exécution 13 : incompatibilité de type dans Excel Visual Basic : correctif

Lors de l’exécution des codes Visual Basic dans une feuille de calcul Excel, vous avez peut-être été confronté à cette invite « Erreur d’exécution 13. Incompatibilité de type ». Le module d’application Visual Basic vous aide à améliorer votre feuille de calcul. Mais, tout comme les autres codes, les codes Visual Basic peuvent également générer des erreurs d’exécution, ce qui est assez normal. Suivez ces ensembles de solutions sur votre ordinateur pour corriger cette erreur Visual Basic sur votre système.

image sélectionnée min

Correctif 1 – Vérifiez le type de valeur

La part du lion des utilisateurs qui rencontrent cette erreur de non-concordance de type est due à un type de valeur incorrect déclaré dans le code.

Étape 1 Pendant que vous êtes dans ce fichier Excel, accédez à l’onglet « Développeur ».

Étape 2 – Plus tard, cliquez sur « Visual Basic » pour charger le code Visual Basic de la feuille de calcul.

Ou, vous pouvez appuyer sur le bouton « Déboguer » dans l’ invite d’erreur d’exécution .

visuel basique min

Étape 3 – Lorsque l’application Visual Basic s’ouvre, vérifiez clairement le code dans le volet de droite.

Étape 4 – Vérifiez les types de variables déclarés dans le code.

[Exemple –

Sub Excel_MisMatch

Dim k comme entier

k = « TGP »

MsgBox k

Fin du sous-marin

Comme vous pouvez le voir, le k est déclaré ici comme un entier. La valeur Integer prend n’importe quelle valeur comprise entre -2 147 483 647 et 2 147 483 647 . Mais, dans la ligne suivante du code, k est « TGP », ce qui correspond au mauvais type de données.

Modifier légèrement le code devrait résoudre ce problème –

Sub Excel_MisMatch

Dim k comme entier

k = « 1 »

MsgBox k

Fin du sous-marin

]

première minute

Après cela, enregistrez les modifications et exécutez à nouveau le code VB. Cette fois, il sera exécuté sans aucune erreur d’exécution.

Correctif 2 – Ajustez le type d’entrée

La deuxième raison la plus importante est une mauvaise saisie lors de l’exécution du code Visual Basic.

Vous devez vous assurer que les utilisateurs de la feuille de calcul saisissent le bon format/type de données en entrée. Par exemple, si vous avez conçu l’extrait de code comme ceci :

Sub Excel_MisMatch

Dim k comme chaîne

Dim q comme entier

k = InputBox(« Entrez les informations d’identification »)

q = InputBox(« Entrez l’âge »)

Maintenant, vous devez vous assurer que l’utilisateur ne saisit aucune lettre pour la variable q car il s’agit d’un nombre entier (il ne peut pas accepter de caractères en entrée).

Correctif 3 – Utiliser les outils de débogage VBA

Il existe un outil de débogage VBA dédié que vous pouvez utiliser pour déboguer le code.

Étape 1 – Dans Microsoft Excel , appuyez simultanément sur les touches Win+F11 .

Étape 2 – Au fur et à mesure du chargement du module Visual Basic, vous verrez l’extrait de code dans le volet de droite.

Étape 3 – Ensuite, cliquez une fois avant la touche Sub.

sous dans cette minute

Étape 4 – Après cela, cliquez sur l’outil « Debug » et choisissez les opérations Step into (comme Step into , Step Over , Step Out ) pour déboguer le code.

min de débogage

De plus, vous pouvez également utiliser une sous-procédure pour déboguer les fonctions.

Étape 5 – Répétez la même chose pour toutes les lignes de code.

Complétez le code visuel de base du terminal et testez-le.

Vous n’aurez pas d’erreur d’incompatibilité de type dans le panneau Visual Basic.

Fix 4 – Décaler correctement les opérations

Une autre raison possible pour laquelle ce type d’erreur de non-concordance se produit est due à des opérations mal configurées utilisées dans le code. Lors du codage, vous ne pouvez pas opérer sur deux autres types de données en même temps.

Exemple

Sub Excel_MisMatch

Dim k comme entier

Dim q comme chaîne

k = « 1 »

q= »TGP »

MsgBox k*q

Fin du sous-marin

la dernière minute

Comme les variables sont k, q sont deux types de données distincts (k est un entier, q est la chaîne), vous ne pouvez donc pas utiliser de fonction opérateur sur elles. Vérifiez donc le code Visual Basic et éliminez toutes les occurrences évoquées.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *