Erreur VBA Excel 1004

L'erreur VBA 1004 est une erreur que nous rencontrons lors de l'exécution d'un code dans VBA, également connue sous le nom d'erreur d'exécution VBA. Pendant que nous travaillons en VBA ou dans tout autre langage de programmation ou même dans notre travail quotidien, nous rencontrons différents types d'erreurs. Parfois, même nous manquons un seul caractère dans le code, ce qui empêche tout le code de fonctionner ou peut-être que tout le code est incorrect.

Les erreurs font définitivement partie du code que nous écrivons. Cela peut être involontaire, mais ils existent. Peu importe notre niveau de programmation, une erreur d'exécution peut se produire n'importe où. Comme expliqué ci-dessus, l'erreur VBA 1004 est une erreur qui se produit pendant l'exécution du code dans Excel. Elle est également appelée erreur définie par l'application ou définie par l'objet.

Il existe différents types de raisons pour lesquelles nous obtenons l'erreur d'exécution VBA 1004 dans Excel, laissez-nous en apprendre quelques-unes.

  • Erreur d'exécution VBA 1004: la méthode «Plage» de l'objet «_ Global» a échoué:

Cette erreur se produit lorsque la valeur de plage à laquelle nous faisons référence à VBA est incorrecte. Il est également appelé car la méthode «Range» de l'objet «_ Global» a échoué.

  • Erreur d'exécution VBA 1004: ce nom est déjà pris. Essayez un autre:

Nous donnons le même nom à une feuille de calcul qui est déjà prise par une autre feuille de calcul.

  • Erreur d'exécution VBA 1004: impossible d'obtenir la propriété select de la classe Range:

Il s'agit d'une erreur lorsque nous sélectionnons une plage dans une autre feuille de calcul sans activer la feuille de calcul à laquelle nous faisons référence.

  • Erreur d'exécution VBA 1004: la méthode «Ouvrir» de l'objet «Classeurs» a échoué:

Cette erreur se produit lorsque nous essayons d'ouvrir un classeur qui est déjà ouvert ou le fichier est déjà utilisé par un autre programme.

  • Erreur d'exécution VBA 1004: Désolé, nous n'avons pas pu trouver:

Nous obtenons cette erreur lorsque nous essayons d'ouvrir une feuille de calcul qui n'existe pas.

Comme nous l'avons appris, il peut y avoir diverses raisons pour lesquelles nous obtenons une erreur d'exécution. Une erreur d'exécution peut se produire sur n'importe quelle ligne de code. Nous devons apprendre à gérer ces erreurs et cela s'appelle la gestion des erreurs VBA.

Exemple d'erreur d'exécution VBA 1004 dans Excel

Maintenant que j'ai décrit différents types d'erreurs qui peuvent se produire pendant l'exécution de n'importe quel code VBA, laissez-nous les apprendre comment elles apparaissent avec des exemples.

Vous pouvez télécharger ce modèle Excel d'erreur VBA 1004 ici - Modèle Excel d'erreur VBA 1004

Erreur d'exécution VBA 1004 - Exemple # 1

Comme expliqué à propos de cette erreur, cette erreur se produit lorsque nous nous référons à une valeur de plage nommée incorrecte dans VBA. Cela peut se produire si nous commettons une erreur d'orthographe dans la plage nommée de pour désigner une plage qui n'existe même pas. Pour le démontrer, faisons d'abord une plage nommée. J'ai les données suivantes ici.

  • Appelons cet en-tête de table DATA .

  • Accédez à l'onglet Développeur, cliquez sur Visual Basic pour ouvrir l'éditeur VB.

  • Déclarez la sous-fonction pour commencer à écrire le code.

Code:

 Sous-échantillon () End Sub 

  • Appelez l'en-tête que nous avons nommé par le code suivant écrit ci-dessous.

Code:

 Sub Sample () Range ("Data"). Sélectionnez End Sub 

  • Lorsque nous exécutons le code, nous pouvons voir dans l'Excel qu'il a été sélectionné car nous avons appelé correctement l'en-tête.

  • Maintenant, nous orthographions mal l'orthographe du nom de l'en-tête.

Code:

 Sub Sample () Range ("Dataa"). Sélectionnez End Sub 

  • Exécutez à nouveau le code pour voir le résultat.

Nous obtenons Excel 1004 VBA Runtime Error car nous avons mal orthographié le nom de la plage.

Erreur d'exécution VBA 1004 - Exemple # 2

Nous obtenons cette erreur lorsque nous essayons de renommer une feuille de calcul avec un nom qui est déjà pris. Par exemple, j'ai renommé la feuille 1 en « Anand » et j'essaierai de renommer la feuille 2 de la même manière, puis je verrai le résultat.

  • Accédez à l'onglet Développeur, cliquez sur Visual Basic pour ouvrir l'éditeur VB.
  • Déclarez une sous-fonction pour commencer à écrire le code.

Code:

 Sub Sample1 () End Sub 

  • Essayez de renommer la feuille 2 en Anand par le code suivant ci-dessous,

Code:

 Sub Sample1 () Worksheets ("Sheet2"). Name = "Anand" End Sub 

  • Exécutez le code ci-dessus et voyez le résultat.

Lorsque j'essaie de renommer une feuille avec le nom qui est déjà pris, j'obtiens une erreur.

Erreur d'exécution VBA 1004 - Exemple # 3

J'essaierai d'ajouter la valeur de la feuille 2 à une variable de la feuille 3. Mais je n'activerai pas la feuille 2 et je ne verrai pas ce qui se passe.

  • Accédez à l'onglet Développeur, cliquez sur Visual Basic pour ouvrir l'éditeur VB.
  • Déclarez une sous-fonction pour commencer à écrire le code.

Code:

 Sub Sample2 () End Sub 

  • Déclarez deux variables A et B sous forme d'entier.

Code:

 Sub Sample2 () Dim A as Integer Dim B As Integer End Sub 

  • Dans la variable B, enregistrez la valeur de A en plus de la cellule A1 de la feuille 2.

Code:

 Sub Sample2 () Dim A as Integer Dim B As Integer B = A + Worksheets ("Sheet2"). Range ("A1"). Select End Sub 

  • Supposons que le code fonctionne et utilisons la fonction msgbox pour afficher la valeur de B.

Code:

 Sub Sample2 () Dim A as Integer Dim B As Integer B = A + Worksheets ("Sheet2"). Range ("A1"). Sélectionnez MsgBox B End Sub 

  • Exécutez le code pour voir le résultat obtenu.

Nous obtenons cette erreur car nous n'avons pas activé la feuille 2 mais nous essayons d'utiliser une valeur de la feuille 2.

Erreur d'exécution VBA 1004 - Exemple # 4

Nous rencontrons cette erreur d'exécution lorsque nous avons déjà le même nom de classeur ouvert mais nous essayons de l'ouvrir à nouveau.

Pour cet exemple, j'ai déjà renommé mon classeur en VBA 1004 Error.xlsm et je vais essayer de l'ouvrir à nouveau qui est déjà ouvert et voir si j'obtiens l'erreur VBA 1004.

  • Accédez à l'onglet Développeur, cliquez sur Visual Basic pour ouvrir l'éditeur VB.
  • Déclarez une sous-fonction pour commencer à écrire le code.

Code:

 Sub Sample3 () End Sub 

  • Déclarez une variable comme classeur.

Code:

 Sub Sample3 () Dim A As Workbook End Sub 

Essayez d'ouvrir le classeur que nous avons déjà ouvert avec le code suivant.

Code:

 Sub Sample3 () Dim A As Workbook Set wb = Workbooks.Open ("\\ VBA 1004 Error.xlsm", ReadOnly: = True, CorruptLoad: = xlExtractData) End Sub 

Exécutez le code ci-dessus pour voir le résultat.

Nous obtenons cette erreur car nous avons déjà ouvert le même classeur.

Erreur d'exécution VBA 1004 - Exemple # 5

Nous obtenons cette erreur lorsque nous essayons d'ouvrir un classeur qui n'existe pas. Ceci est quelque peu similaire à l'erreur ci-dessus que nous obtenons car VBA ne peut pas trouver le classeur.

  • Accédez à l'onglet Développeur, cliquez sur Visual Basic pour ouvrir l'éditeur VB.
  • Déclarez une sous-fonction pour commencer à écrire le code.

Code:

 Sub Sample4 () End Sub 

  • Essayez d'ouvrir un classeur avec le code suivant,

Code:

 Sub Sample4 () Workbooks.Open Filename: = "C: \ EDUCBA Content \ April \ VBA OR Function.xlsm" End Sub 

  • J'ai déjà supprimé la feuille de l'emplacement.
  • Exécutez le code pour voir le résultat.

Comme la feuille n'existe pas à l'emplacement donné, nous obtenons cette erreur.

Choses dont il faut se rappeler

  • Vérifiez toujours les fautes d'orthographe.
  • Ne renommez pas plusieurs feuilles de calcul portant le même nom.
  • Avant d'appeler toute autre référence, assurez-vous d'activer la feuille de calcul correspondante.
  • Avant d'essayer d'ouvrir une autre feuille de calcul, assurez-vous que le chemin d'accès fourni est correct.

Articles recommandés

Cela a été un guide pour l'erreur VBA 1004. Ici, nous avons discuté de l'erreur d'exécution 1004 VBA d'Excel avec des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. Ajouter ou supprimer une barre d'erreur dans Excel
  2. VBA en boucle | MS Excel
  3. Comprendre les erreurs dans Excel
  4. Utilisation d'IFError dans VBA

Catégorie: