Contenu clair VBA

Contenu clair Excel VBA

Clear contents est une méthode dans VBA qui est utilisée pour supprimer ou supprimer les valeurs qui sont stockées dans les cellules qui lui sont fournies, cette méthode rend la plage de cellules vide et elle est utilisée avec la propriété range pour accéder à la plage de cellules spécifiée, l'exemple pour utiliser cette méthode est la suivante range ("A1: B2"). ClearContents cette méthode effacera le contenu des cellules de A1 à B2.

Dans Excel, ajouter les données et supprimer les données est une tâche de routine courante. Parfois, nous supprimons une seule valeur de cellule, parfois de nombreuses valeurs de cellules, et parfois nous pouvons également avoir besoin de supprimer tout le contenu de la feuille de calcul. Dans cet article, nous allons vous montrer comment utiliser la méthode «Effacer le contenu» dans Excel VBA. Dans VBA, nous avons de nombreuses méthodes pour faire cela comme «Effacer», «Supprimer» et «Effacer le contenu».

Que sont les contenus clairs dans Excel VBA?

Avant de vous parler de Effacer le contenu dans VBA, laissez-moi vous montrer comment nous pouvons supprimer ou effacer les données dans la plage spécifique.

Par exemple, regardez les données ci-dessous.

Maintenant, si je veux effacer de la cellule A1 à C3, nous devons d'abord mentionner la plage de cellules à l'aide de l'objet VBA RANGE.

Code:

Plage ("A1: C3")

Après avoir mentionné la plage de cellules en utilisant l'objet RANGE, nous devons sélectionner la méthode «Effacer» pour effacer la mention des valeurs de cellule.

Code:

Plage («A1: C3»). Effacer

Cela effacera les valeurs de cellule mentionnées.

Code:

 Sub Clear_Example () Range ("A1: C3"). Clear End Sub 

Outre la méthode claire, nous pouvons également utiliser la méthode «DELETE».

Code:

Plage («A1: C3»). Supprimer

Cela supprimera les valeurs de cellule mentionnées, tout comme notre méthode clear l'a fait.

Si vous souhaitez supprimer toutes les données de la cellule, vous pouvez utiliser la propriété VBA CELLS avec un nom de feuille de calcul.

Feuilles de calcul («Sheet1»). Cells.Supprimer
Feuilles de calcul («Sheet1»). Cells.Clear

Les deux codes ci-dessus supprimeront toutes les données de la feuille de calcul «Sheet1». Il supprimera les valeurs de cellule directement de la première cellule à la dernière cellule de la feuille de calcul.

Si vous souhaitez supprimer les cellules de feuille actuelles, vous pouvez utiliser l'objet Feuille active.

ActiveSheet.Cells.Delete ou ActiveSheet.Cells.Clear

Différence entre les méthodes d'effacement et de suppression

Je sais que cette question aurait déjà dû jouer dans votre esprit.

Oui, il y a une différence entre ces deux méthodes.

Lorsque vous utilisez la méthode «Supprimer», il supprimera la cellule et la cellule ci-dessous reprendra la position de la cellule supprimée.

Pour un exemple, regardez l'image ci-dessous.

Maintenant, je vais utiliser la méthode de suppression pour supprimer la cellule A1.

Code:

 Sub Clear_Example () Range ("A1"). Delete End Sub 

Je vais exécuter ce code et voir ce qui se passe.

Regardez ce qui s'est passé ici, comme je l'ai dit lorsque j'ai supprimé la cellule A1, elle est supprimée mais la cellule A2 se déplace d'une cellule vers le haut et a occupé la cellule supprimée. Cela entraînera une inadéquation des données. Soyez donc prudent lorsque vous utilisez la méthode Delete.

Maintenant, pour les mêmes données, je vais effacer la méthode.

Code:

 Sub Clear_Example () Range ("A1"). Clear End Sub 

Maintenant, voyez ce qui se passe lorsque j'exécute ce code.

Ce code vient de quitter la cellule A1 sans modifier les autres cellules. Cette méthode semble appropriée pour supprimer uniquement la partie des cellules de la plage de données entière.

Utilisez la méthode VBA Clear Contents pour conserver le formatage des cellules

Si vous avez observé les deux méthodes précédentes, ces deux méthodes ont non seulement supprimé ou effacé les cellules fournies. Il a également supprimé la mise en forme des cellules que nous avons fournies.

Afin de conserver le formatage des cellules, nous n'avons pas besoin d'utiliser ni «Supprimer» ni «Effacer», mais nous devons utiliser la méthode VBA «Effacer le contenu».

Au moment où vous entrez dans la plage de cellules à l'aide d'un objet RANGE, toutes les propriétés et méthodes qui lui sont associées s'affichent.

Nous pouvons accéder à «Supprimer», nous pouvons accéder à «Effacer», et nous pouvons également utiliser les méthodes «ClearContents».

Sélectionnez cette méthode.

Code:

 Sub Clear_Example () Range ("A1: C3"). ClearContents End Sub 

Maintenant, cela effacera le contenu de la cellule A1 à C3, mais nous aurons tout le formatage existant tel quel.

Comme vous pouvez le voir dans l'image ci-dessus, nous avons la couleur des cellules dans VBA, les bordures et toutes les mises en forme associées à ces cellules mentionnées.

De même, nous pouvons également effacer le contenu d'autres feuilles.

Feuilles de calcul ("Sheet1"). Plage ("A1: D10"). ClearContents

Cela effacera le contenu des cellules A1 à D10 dans la feuille «Sheet1».

De même, nous pouvons également supprimer les autres cellules de classeur ouvertes.

Classeurs ("Book1.xlsx"). Feuilles de calcul ("Sheet1"). Plage ("A1: D10"). ClearContents

Parcourez toutes les feuilles de calcul et effacez le contenu d'une plage spécifique

Supposons que votre classeur comporte de nombreuses feuilles et que vous souhaitiez supprimer la plage de cellules de A1 à C15 dans toutes les feuilles dont nous avons besoin pour utiliser For Each Loop dans VBA pour ce faire.

Le code ci-dessous fera l'affaire.

Code:

 Sub Clear_All () Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets Ws.Range ("A1: C15"). ClearContents Next Ws End Sub 

Remarque: vous pouvez modifier la plage de cellules selon votre souhait.

Juste au cas où vous souhaitez effacer toutes les données de la feuille de calcul, vous devez utiliser le code ci-dessous.

Code:

 Sub Clear_All () Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets Ws.Cells.ClearContents Next Ws End Sub 

Vous pouvez télécharger ce modèle Excel VBA Clear Contents ici - Modèle VBA Clear Contents