Comment réparer "Erreur d'exécution 424 & # 39; Objet requis" "- VBA (Excel)

Si vous utilisez Excel, vous pouvez rencontrer l'erreur "Error Runtime 424" avec le message "Object Required".

Il s'agit d'une erreur avec VBA (Visual Basic pour Applications) et indique essentiellement lorsque vous faites référence à un objet qui n'existe pas ou est hors de portée réelle.

Si vous voyez l'erreur après que quelqu'un "développe" une opération macro / automatique dans une feuille de calcul Excel, le problème potentiel est que vous appelez un objet "hors contexte". Cela signifie que vous avez peut-être téléchargé un objet, mais son contenu aurait pu être modifié ou remplacé. Il y a quelques autres problèmes possibles, ajustements que je vais expliquer dans ce tutoriel …

cause

L'erreur que vous verrez aura le message suivant:

Erreur lors de l'exécution de & # 39; 424 & # 39;

Objet requis

Pour expliquer pourquoi il montre l'erreur et ce que cela signifie – Microsoft a publié son package "Visual Basic" à la fin des années 90.

Cela a fourni des capacités de base avec le système, permettant aux développeurs amateurs de créer des applications simples. VB a été un grand succès.

Pour cette raison, Microsoft a introduit "VBA" (Visual Basic pour Applications) dans leur progiciel Office, à savoir Excel et Word. Cela a permis aux types de développeurs de créer une fonctionnalité automatisée dans des feuilles de calcul Excel, se référant aux «objets» dans la feuille elle-même.

Chaque fois que vous utilisez Visual Basic, ce que vous appelez est une série «d'objets» en mémoire. Ces objets sont simplement des variables avec une série de fonctionnalités supplémentaires appliquées, y compris des fonctions personnalisées, etc. Le problème – et cela s'étend à la plupart des langages de programmation – est que si vous faites référence à un objet qui n'est pas appelé, l'application échouera.

règlement

Si vous souhaitez résoudre le problème, vous devez d'abord vous assurer que les données sont présentes dans le système, puis vous pouvez vous y référer correctement. Ce guide expliquera comment:

1. Assurez-vous de spécifier correctement les variables

Le point principal est que vous avez invoqué une méthode dans une variable (objet) qui n'existe pas. La raison la plus courante à cela est que vous avez simplement confondu le nom de la variable et ne l'avez donc pas déclaré dans votre application VBA. Prenons l'exemple suivant:

En cours de test ()

Application33.WorksheetFunction.Sum (Range ("A1: A100"))

End Sub

Ce qui précède générera l'erreur parce que vous essayez d'appeler la méthode Worksheet à un objet appelé "Application33".

Malheureusement, l'objet Application33 n'existe pas en mémoire, empêchant votre application de pouvoir le charger. Pour résoudre ce problème, vous devez parcourir votre code source (la mauvaise référence sera presque toujours référencée) et corriger tout nom d'objet incorrect.

2. Si vous utilisez Excel, assurez-vous que des échelles / sélecteurs existent

L'une des raisons d'erreur les plus courantes est que vous essayez de référencer un objet ou une valeur qui n'existe pas. Il s'agit d'un problème typique avec les likes d'utilisation de VLookup ou l'un des objets ActiveX. Si vous prouvez cette erreur, vous devez vous assurer que le code fait référence uniquement aux objets existants:

Sous-test privé ()

Cela va créer une erreur

Application.WorksheetFunction.VLookup (Team Name, Range ("TeamNameLookup"), 3, False) .Value

La valeur doit être

Application.WorksheetFunction.VLookup (Team Name, Sheets ("YourSheetName"). Range ("TeamNameLookup"), 3, False)

End Sub

Ce qui précède signifie que vous essayez d'appeler différentes feuilles de calcul et leurs fonctions respectives "Plage" / "Valeur" sans les feuilles trouvées ou déclarées. Pour résoudre ce problème, vous devez vous assurer que vous appelez "Range" ou "Value" dans les objets correspondants fournis.

3. Assurez-vous d'avoir les bonnes définitions

Enfin, l'une des raisons d'erreur les plus courantes est que vous ne définissez pas correctement vos variables.

De la définition incorrecte de variables en tant que définitions d'objet incorrectes à l'appel de "Clear Option", il se peut que vous essayiez de référencer des variables / objets qui n'ont pas été définis simplement parce qu'ils ne sont pas correctement définis.

Par exemple …

Option clairement

Sous-test privé ()

Ici, vous devez indiquer clairement les variables avant d'essayer de les référencer / les remplir

Par exemple …

Dim your_path As String

Définissez your_path = "x / y / z"

End Sub

Dans l'exemple ci-dessus, si la variable "your_path" n'est pas déclarée avant d'essayer de la définir, vous vous retrouverez avec l'erreur 424 (puisque l'objet "your_path" n'existe pas). À partir d'ici, vous devez également vous assurer que vous êtes en mesure d'appeler les objets appropriés (si vous faites référence à une valeur de feuille de calcul, vous devez vous assurer que la feuille de calcul existe et peut être chargée).

Bien sûr, il existe un certain nombre d'autres cas de cette erreur. En raison de la nature spécifique du changement de code de chacun, je ne peux pas transmettre chaque potentiel. J'espère que vous pouvez voir que l'erreur a été causée par une référence de variable non valide dans votre système.