Exemples Excel VBA pour les débutants
Les macros sont votre meilleur allié pour augmenter votre productivité ou gagner du temps sur votre lieu de travail. Des petites tâches aux grandes tâches, nous pouvons automatiser en utilisant le langage de codage VBA. Je sais que vous avez souvent pensé à certaines des limites d'Excel, mais avec le codage VBA, vous pouvez les éliminer toutes. Ok, si vous avez eu du mal avec VBA et que vous êtes toujours débutant dans cet article, nous donnerons quelques exemples utiles de code de macro VBA dans Excel.
Liste des 19 meilleurs exemples
- Imprimer tous les noms de feuille
- Insérer un index de couleur différent dans VBA
- Insérer le numéro de série du haut
- Insérer le numéro de série par le bas
- Insérer le numéro de série de 10 à 1
- Insérez des feuilles de calcul autant que vous le souhaitez
- Supprimer toutes les feuilles de calcul vierges du classeur
- Insérer une ligne vide après chaque autre ligne
- Mettre en évidence une erreur d'orthographe
- Tout changer en caractères majuscules
- Tout changer en caractères minuscules
- Mettez en surbrillance toutes les cellules commentées
- Mettez en surbrillance toutes les cellules vides
- Masquer toutes les feuilles sauf une
- Afficher toutes les feuilles
- Supprimer tous les fichiers du dossier
- Supprimer tout le dossier
- Rechercher la dernière ligne utilisée dans la feuille
- Rechercher la dernière colonne utilisée dans la feuille
Voyons chacun de cet exemple en détail.
Vous pouvez télécharger ce modèle Excel d'exemples VBA ici - Modèle Excel d'exemples VBA# 1 - Imprimer tous les noms de feuille
Code:
Sub Print_Sheet_Names () Dim i As Integer For i = 1 To Sheets.Count Cells (i, 1) .Value = Sheets (i) .Name Next i End Sub
Cela extraira tous les noms de feuille dans la feuille active.
# 2 - Insérer un index de couleur différent dans VBA
Code:
Sub Insert_Different_Colours () Dim i As Integer For i = 1 To 56 Cells (i, 1) .Value = i Cells (i, 2) .Interior.ColorIndex = i Next End Sub
Cela insérera les nombres de 1 à 56 et leur index de couleur dans la colonne suivante.
# 3 - Insérer le numéro de série du haut
Code:
Sub Insert_Numbers_From_Top () Dim i As Integer For i = 1 To 10 Cells (i, 1) .Value = i Next i End Sub
Cela insérera les numéros de série de 1 à 10 à partir du haut.
# 4 - Insérez le numéro de série du bas
Code:
Sub Insert_Numbers_From_Bottom () Dim i As Integer For i = 20 To 1 Step -1 Cells (i, 7) .Value = i Next i End Sub
Cela insérera les numéros de série de 1 à 20 à partir du bas.
# 5 - Insérez le numéro de série de 10 à 1
Code:
Sub Ten_To_One () Dim i As Integer Dim j As Integer j = 10 For i = 1 To 10 Range ("A" & i) .Value = jj = j - 1 Next i End Sub
Cela insérera les numéros de série de 10 à 1 à partir du haut.
# 6 - Insérez des feuilles de calcul autant que vous le souhaitez
Code:
Sub AddSheets () Dim ShtCount As Integer, i As Integer ShtCount = Application.InputBox ("Combien de feuilles souhaitez-vous insérer?", "Add Sheets",,,,,, 1) If ShtCount = False Then Exit Sub Else Pour i = 1 aux feuilles de calcul ShtCount.Add Next i End If End Sub
Cela vous demandera d'entrer le nombre de feuilles de calcul que vous souhaitez insérer. Spécifiez simplement le numéro dans la zone de saisie et cliquez sur OK, il insérera ces nombreuses feuilles immédiatement.
# 7 - Supprimer toutes les feuilles de calcul vierges du classeur
Code:
Sub Delete_Blank_Sheets () Dim ws As Worksheet Application.DisplayAlerts = False Application.ScreenUpdating = False For Each ws In ActiveWorkbook.Worksheets If WorksheetFunction.CountA (ws.UsedRange) = 0 Puis ws.Delete End If Next ws Application.DisplayAlerts = True Application .ScreenUpdating = True End Sub
Cela supprimera toutes les feuilles de calcul vierges du classeur sur lequel nous travaillons.
# 8 - Insérer une ligne vide après chaque autre ligne
Code:
Sub Insert_Row_After_Every_Other_Row () Dim rng As Range Dim CountRow As Integer Dim i As Integer Set rng = Selection CountRow = rng.EntireRow.Count For i = 1 To CountRow ActiveCell.EntireRow.Insert ActiveCell.Offset (2, 0) .Select Next i End Sub
Pour cela, vous devez d'abord sélectionner la plage dans laquelle vous souhaitez insérer des lignes vides alternatives.
# 9 - Mettre en évidence une erreur d'orthographe
Code:
Sub Chech_Spelling_Mistake () Dim MySelection As Range pour chaque MySelection dans ActiveSheet.UsedRange sinon Application.CheckSpelling (Word: = MySelection.Text) Then MySelection.Interior.Color = vbRed End If Next MySelection End Sub
Tout d'abord, sélectionnez les données et exécutez le code VBA. Il mettra en évidence les cellules qui ont des fautes d'orthographe.
# 10 - Tout changer en caractères majuscules
Code:
Sub Change_All_To_UPPER_Case () Dim Rng As Range For Each Rng In Selection.Cells If Rng.HasFormula = False Then Rng.Value = UCase (Rng.Value) End If Next Rng End Sub
Tout d'abord, sélectionnez les données et exécutez le code. Il convertira toutes les valeurs de texte en caractères majuscules.
# 11 - Tout changer en caractères minuscules
Code:
Sub Change_All_To_LOWER_Case () Dim Rng As Range For Each Rng In Selection.Cells If Rng.HasFormula = False Then Rng.Value = LCase (Rng.Value) End If Next Rng End Sub
First, select the data and run the code. It will convert all the text values to lower case characters in excel.
#12 – Highlight All the Commented Cells
Code:
Sub HighlightCellsWithCommentsInActiveWorksheet() ActiveSheet.UsedRange.SpecialCells(xlCellTypeComments).Interior.ColorIndex = 4 End Sub
Result:
#13 – Highlight All the Blank Cells
Code:
Sub Highlight_Blank_Cells() Dim DataSet As Range Set DataSet = Selection DataSet.Cells.SpecialCells(xlCellTypeBlanks).Interior.Color = vbGreen End Sub
First, select the data range and run the code. It will highlight all the blank cells with green color.
#14 – Hide All Sheets Except One Sheet
Code:
Sub Hide_All_Except_One() Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets If Ws.Name "Main Sheet" Then Ws.Visible = xlSheetVeryHidden Next Ws End Sub
The above code hides all the sheets except the sheet named as “Main Sheet”. You can change the worksheet name as per your wish.
#15 – Unhide All Sheets
Code:
Sub UnHide_All() Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets Ws.Visible = xlSheetVisible Next Ws End Sub
This will unhide all the hidden sheets.
#16 – Delete All Files in the Folder
Code:
Sub Delete_All_Files() 'You can use this to delete all the files in the folder Test '' On Error Resume Next Kill "C:\Users\Admin_2.Dell-Pc\Desktop\Delete Folder\*.*" On Error GoTo 0 End Sub
Change the folder path which is marked in red as per your folder deletion.
#17 – Delete Entire Folder
Code:
Sub Delete_Whole_Folder() 'You can use this to delete entire folder On Error Resume Next Kill "C:\Users\Admin_2.Dell-Pc\Desktop\Delete Folder\*.*" 'Firstly it will delete all the files in the folder 'Then below code will delete the entire folder if it is empty RmDir "C:\Users\Admin_2.Dell-Pc\Desktop\Delete Folder\" 'Note: RmDir delete only a empty folder On Error GoTo 0 End Sub
Change the folder path which is marked in red as per your folder deletion.
#18 – Find the Last Used Row in the Sheet
Code:
Sub Last_Row() Dim LR As Long LR = Cells(Rows.Count, 1).End(xlUp).Row MsgBox LR End Sub
Here we find the Last used Row in the Sheet
#19 – Find the Last Used Column in the Sheet
Code:
Sub Last_Column() Dim LC As Long LC = Cells(1, Columns.Count).End(xlToLeft).Column MsgBox LC End Sub
Here we find the Last used Column in the Sheet