Colonne de suppression VBA

Normalement, dans la feuille de calcul Excel, nous avons deux méthodes différentes pour supprimer les colonnes, l'une étant le raccourci clavier et l'autre en utilisant le clic droit et la méthode d'insertion, mais dans VBA, nous devons utiliser la commande de suppression et l'instruction de colonne entière pour supprimer une colonne ensemble, l'astuce pour c'est que si nous devons supprimer une seule colonne, nous donnons une seule référence de colonne, mais pour les colonnes multiples, nous donnons plusieurs références de colonne.

Colonne de suppression Excel VBA

Nous effectuons de nombreuses actions dans Excel comme couper, copier, coller, ajouter, supprimer, insérer et bien d'autres choses que nous faisons régulièrement. Nous pouvons utiliser toutes ces actions en utilisant le codage VBA. L'un des concepts importants que nous devons apprendre dans VBA est la «colonne de suppression». Dans cet article, nous allons vous montrer comment utiliser cette option Supprimer la colonne dans VBA.

Que fait Supprimer la colonne dans Excel VBA?

Comme son nom l'indique, il supprimera la colonne spécifiée. Pour effectuer cette tâche, nous devons d'abord identifier la colonne à supprimer. La sélection des colonnes à supprimer est différente d'un scénario à l'autre, nous allons donc couvrir certains des scénarios importants et souvent rencontrés dans cet article.

La suppression des colonnes est facile. Tout d'abord, nous devons utiliser la propriété COLUMNS pour sélectionner la colonne, vous trouverez donc ci-dessous la syntaxe de la méthode Column Delete dans VBA.

Colonnes (référence de colonne) .Supprimer

Nous pouvons donc construire le code comme ceci:

Colonnes (2) .Supprimer ou Colonnes («B»). Supprimer

Cela supprimera la colonne numéro 2, c'est-à-dire la colonne B.

Si nous voulons supprimer plusieurs colonnes, nous ne pouvons pas entrer de colonnes, nous devons référencer les colonnes par des en-têtes de colonne, c'est-à-dire des alphabets.

Colonnes ("A: D"). Supprimer

Cela supprimera la colonne de A à D, c'est-à-dire les 4 premières colonnes.

Comme cela, nous pouvons utiliser la méthode «Supprimer la colonne» dans VBA pour supprimer les colonnes particulières. Dans la section ci-dessous, nous verrons plus d'exemples pour mieux le comprendre. Continuer à lire.

Exemples de méthode de suppression de colonne Excel VBA

Vous trouverez ci-dessous des exemples pour supprimer des colonnes à l'aide de VBA.

Exemple # 1 - Utilisation de la méthode Delete

Supposons que vous ayez la fiche technique quelque chose comme ci-dessous.

Si nous voulons supprimer la colonne mois «Mar», sélectionnez d'abord la propriété des colonnes.

Code:

 Sub Delete_Example1 () Colonnes (End Sub 

Mentionnez le numéro de colonne ou l'alphabet. Dans ce cas, c'est soit 3, soit C.

Code:

Sous Delete_Example1 () Columns (3). End Sub

Utilisez la méthode Delete.

Remarque: vous n'obtiendrez pas de liste IntelliSense pour sélectionner la méthode de suppression, tapez simplement «Supprimer»,

Code:

 Sub Delete_Example1 () Columns (3) .Delete End Sub 

Ou vous pouvez entrer l'adresse de la colonne comme ceci.

Code:

 Sub Delete_Example1 () Columns ("C"). Delete End Sub 

Exécutez ce code à l'aide de la touche F5 ou vous pouvez l'exécuter manuellement et voir le résultat.

Les deux codes feront le même travail de suppression de la colonne mentionnée.

Si nous voulons supprimer plusieurs colonnes, nous devons les mentionner dans les alphabets, nous ne pouvons pas utiliser les numéros de colonne ici.

Si nous voulons supprimer les colonnes 2 à 4, nous pouvons passer le code comme ci-dessous.

Code:

 Sub Delete_Example1 () Columns ("C: D"). Delete End Sub 

Exécutez ce code manuellement via l'option d'exécution ou appuyez sur la touche F5, cela supprimera les colonnes «Feb», «Mar» et «Apr».

Exemple # 2 - Supprimer les colonnes avec le nom de la feuille de calcul

Ce qui précède est un aperçu de la façon de supprimer des colonnes à l'aide du code VBA. Cependant, ce n'est pas la bonne pratique de supprimer des colonnes, sans faire référence au nom de la feuille de calcul, il est dangereux de supprimer aveuglément la colonne.

Si vous n'avez pas mentionné le nom de la feuille de calcul, quelle que soit la feuille active, elle supprimera les colonnes de cette feuille.

Tout d'abord, nous devons sélectionner la feuille de calcul par son nom.

Code:

 Sub Delete_Example2 () Worksheets ("Sales Sheet"). Sélectionnez End Sub 

Après avoir sélectionné la feuille, nous devons sélectionner les colonnes. Nous pouvons également sélectionner les colonnes à l'aide de l'objet VBA RANGE.

Code:

 Sub Delete_Example2 () Worksheets ("Sales Sheet"). Sélectionnez Range ("B: D"). Delete End Sub 

Cela supprimera les colonnes B à D de la feuille de calcul «Sales Sheet». Pour ce code, peu importe ce qui est actif, il supprimera les colonnes mentionnées de cette feuille uniquement.

Nous pouvons également construire le code VBA dans la seule ligne elle-même.

Code:

 Sub Delete_Example2 () Worksheets ("Sales Sheet"). Range ("B: D"). Delete End Sub 

Cela supprime également les colonnes «B à D» sans sélectionner la feuille de calcul «Feuille de ventes».

Exemple # 3 - Supprimer les colonnes vides

Supposons que vous ayez des données qui ont des colonnes vides alternatives comme ci-dessous.

Donc, supprimez toutes les colonnes alternatives que nous pouvons utiliser ci-dessous.

Code:

 Sub Delete_Example3 () Dim k As Integer For k = 1 To 4 Columns (k + 1) .Delete Next k End Sub 

Exécutez ce code en utilisant la touche F5 ou manuellement, il supprimera toutes les colonnes vides alternatives et nos données ressembleront à ceci.

Remarque: cela ne fonctionne que pour les colonnes vides alternatives.

Exemple # 4 - Supprimer les colonnes de cellules vides

Maintenant, regardez cet exemple. Il existe certaines situations dans lesquelles nous devons supprimer la colonne entière si l'une des cellules vides se trouve dans la plage de données. Considérez les données ci-dessous pour un exemple.

Toutes les cellules de couleur jaune sont vides. Donc, ici, mon exigence est de supprimer toutes les colonnes de cellules vides. Le code ci-dessous fera cela.

Code:

 Sub Delete_Example4 () Range ("A1: F9"). Sélectionnez Selection.SpecialCells (xlCellTypeBlanks) .Select Selection.EntireColumn.Delete End Sub 

Laissez-moi vous expliquer ce code ligne par ligne.

Nos données sont là de A1 à F9, donc je dois d'abord sélectionner cette plage, et le code ci-dessous le fera.

Plage ("A1: F9"). Sélectionnez

Dans cette plage de cellules sélectionnée, je dois sélectionner les cellules qui sont vides. Donc, pour sélectionner une cellule vide, nous avons besoin d'une propriété spéciale de cellules et dans cette propriété, nous avons utilisé le type de cellule comme vide.

Selection.SpecialCells (xlCellTypeBlanks) .Select

Ensuite, il sélectionnera toutes les cellules vides et dans la sélection, nous supprimons toute la colonne de la sélection.

Selection.EntireColumn.Delete

Donc, notre résultat final ressemblera à ceci.

Partout où il a trouvé la cellule vide, il a supprimé ces cellules vides de la colonne entière.

Vous pouvez télécharger cette colonne de suppression Excel VBA ici - Modèle de colonne de suppression VBA