Comment désactiver la possibilité d’insérer des lignes et des colonnes dans Excel ?
Normalement, il est possible d’insérer des lignes et des colonnes entre des données existantes rapidement et facilement. Si vous souhaitez empêcher d’autres utilisateurs d’insérer des lignes ou des colonnes dans une feuille de calcul, vous pouvez protéger la feuille pour désactiver cette fonctionnalité. Mais comment désactiver l’insertion de lignes et de colonnes sans protéger la feuille ?
Empêcher les autres utilisateurs Insérer des lignes et des colonnes à l’aide d’un code VBA
Empêcher les autres utilisateurs Insérer des lignes et des colonnes à l’aide d’un code VBA
Le code VBA suivant vous permet de désactiver la fonctionnalité d’insertion de lignes et de colonnes dans un classeur Excel. Voici la marche à suivre :
1. Appuyez sur Alt + F11 pour ouvrir une fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion > Module pour ouvrir une fenêtre de module, puis copiez le code VBA suivant dans cette fenêtre.
Code VBA : empêcher Insérer des lignes et des colonnes :
Sub NoInsert()
'Updateby Extendoffice
Dim I As Integer
Dim cbStr As String
Dim cbCtrl As CommandBarControl
Application.ScreenUpdating = False
For I = 1 To 2
If I = 1 Then
cbStr = "row"
Else
cbStr = "column"
End If
For Each cbCtrl In Application.CommandBars(cbStr).Controls
If cbCtrl.ID = 3183 Then
cbCtrl.Enabled = False
End If
Next
Next
Application.ScreenUpdating = True
End Sub
3. Appuyez sur la touche F5 pour exécuter ce code. Désormais, lorsque vous cliquez avec le bouton droit pour insérer des lignes ou des colonnes, l’option Insérer n’est plus disponible dans le menu contextuel. Voir la capture d’écran :

Remarques :
1. Ce code VBA désactive la fonction « Insérer » dans le menu contextuel de tous les classeurs lorsque vous cliquez avec le bouton droit pour insérer des lignes ou des colonnes.
2. Pour réactiver la commande « Insérer » dans le menu contextuel, appliquez le code suivant :
Sub NoInsert()
'Updateby Extendoffice
Dim I As Integer
Dim cbStr As String
Dim cbCtrl As CommandBarControl
Application.ScreenUpdating = True
For I = 1 To 2
If I = 1 Then
cbStr = "row"
Else
cbStr = "column"
End If
For Each cbCtrl In Application.CommandBars(cbStr).Controls
If cbCtrl.ID = 3183 Then
cbCtrl.Enabled = True
End If
Next
Next
Application.ScreenUpdating = True
End Sub
Meilleurs outils de productivité Office
Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile
- Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !
Tous les compléments Kutools. Un seul installateur
Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.
- Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
- Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
- Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
- Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
- Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels