Exemples de VBA | Llista dels 19 millors exemples de VBA d'Excel per a principiants
Exemples VBA d'Excel per a principiants
Les macros són el vostre millor amic per augmentar la vostra productivitat o estalviar temps al vostre lloc de treball. Des de tasques petites fins a tasques grans, podem automatitzar-les mitjançant el llenguatge de codificació VBA. Sé que sovint podríeu haver pensat en algunes de les limitacions que té Excel, però amb la codificació VBA podeu eliminar-les totes. D’acord, si heu tingut problemes amb VBA i encara és el principiant d’aquest article, donarem alguns exemples útils de codi de macro VBA a Excel.
Llista dels 19 millors exemples
- Imprimiu tots els noms dels fulls
- Inseriu un índex de colors diferents a VBA
- Inseriu el número de sèrie des de dalt
- Inseriu el número de sèrie des de la part inferior
- Inseriu el número de sèrie del 10 al 1
- Inseriu fulls de treball tant com vulgueu
- Suprimiu tots els fulls de treball en blanc del llibre
- Inseriu la fila en blanc després de totes les altres files
- Ressalteu un error d'ortografia
- Canvieu-ho tot a majúscules
- Canvieu-ho tot a caràcters minúscules
- Ressalteu totes les cel·les comentades
- Ressalteu totes les cel·les en blanc
- Amaga tots els fulls excepte un full
- Mostra tots els fulls de càlcul
- Suprimiu tots els fitxers de la carpeta
- Suprimeix tota la carpeta
- Cerqueu l’última fila utilitzada al full
- Cerqueu l’última columna usada al full
Vegem detalladament cadascun d’aquest exemples.
Podeu descarregar aquesta plantilla Excel d’exemples de VBA aquí - Plantilla Excel d’exemples de VBA# 1 - Imprimiu tots els noms dels fulls
Codi:
Sub Print_Sheet_Names () Dim i Integer For i = 1 To Sheets.Count Cells (i, 1) .Value = Sheets (i). Name Next i End Sub
Això extreurà tots els noms del full al full actiu.
# 2 - Inseriu un índex de colors diferents a VBA
Codi:
Sub Insert_Different_Colours () Dim i Integer for i = 1 to 56 Cells (i, 1) .Value = i Cells (i, 2) .Interior.ColorIndex = i Next End Sub
Això inserirà els números de l’1 al 56 i el seu índex de color a la columna següent.
# 3 - Inseriu el número de sèrie des de dalt
Codi:
Sub Insert_Numbers_From_Top () Dim i Integer For i = 1 to 10 Cells (i, 1) .Value = i Next i End Sub
Això inserirà números de sèrie de l'1 al 10 des de la part superior.
# 4 - Inseriu el número de sèrie des de la part inferior
Codi:
Sub Insert_Numbers_From_Bottom () Dim i Integer for i = 20 to 1 Step -1 Cells (i, 7) .Value = i Next i End Sub
Això inserirà números de sèrie de l'1 al 20 des de la part inferior.
# 5 - Inseriu el número de sèrie del 10 al 1
Codi:
Sub Ten_To_One () Dim i As Integer Dim j As Integer j = 10 For i = 1 to 10 Range ("A" & i). Valor = j j = j - 1 Next i End Sub
Això inserirà números de sèrie del 10 al 1 des de la part superior.
# 6 - Inseriu fulls de treball tant com vulgueu
Codi:
Sub AddSheets () Dim ShtCount As Integer, i As Integer ShtCount = Application.InputBox ("Quants fulls voleu inserir?", "Add Sheets",,,,,, 1) Si ShtCount = False, sortiu de Sub Else Per a i = 1 a fulls de càlcul ShtCount.Afegeix Següent Finalitzo si finalitza Sub
Això us demanarà que introduïu el nombre de fulls de treball que voleu inserir. Simplement especifiqueu el número al quadre d’entrada i feu clic a Ok, inserirà aquests molts fulls immediatament.
# 7: suprimiu tots els fulls de treball en blanc del llibre
Codi:
Sub Delete_Blank_Sheets () Dim ws As Worksheet Application.DisplayAlerts = False Application.ScreenUpdating = False per a cada ws d'ActiveWorkbook.Worksheets If WorksheetFunction.CountA (ws.UsedRange) = 0 Aleshores ws.Delete Finalitza si segueix ws Application.DisplayAlerts = True Application .ScreenUpdating = Sub finalitat veritable
Això suprimirà tots els fulls de treball en blanc del llibre de treball en què estem treballant.
# 8 - Insereix una fila en blanc després de totes les altres files
Codi:
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) Finalitzar sub
Per a això primer, heu de seleccionar l’interval on voleu inserir files en blanc alternatives.
# 9: ressalteu un error d'ortografia
Codi:
Sub Chech_Spelling_Mistake () Atenueu MySelection com a interval per a cada MySelection a ActiveSheet.UsedRange Si no és Application.CheckSpelling (Word: = MySelection.Text), llavors MySelection.Interior.Color = vbRed End Si el següent MySelection End Sub
Primer, seleccioneu les dades i executeu el codi VBA. Destacarà les cel·les que tenen errors ortogràfics.
# 10: canvieu-ho tot a majúscules
Codi:
Sub Change_All_To_UPPER_Case () Dism. Rng com a rang per a cada Rng de la selecció.
Primer, seleccioneu les dades i executeu el codi. Convertirà tots els valors del text a majúscules.
# 11: canvieu-ho tot a minúscules
Codi:
Sub Change_All_To_LOWER_Case () Dism. Rng com a rang per a cada Rng de la selecció.
Primer, seleccioneu les dades i executeu el codi. Convertirà tots els valors del text en minúscules en excel.
# 12 - Ressalteu totes les cel·les comentades
Codi:
Sub HighlightCellsWithCommentsInActiveWorksheet () ActiveSheet.UsedRange.SpecialCells (xlCellTypeComments) .Interior.ColorIndex = 4 End Sub
Resultat:
# 13 - Ressalteu totes les cel·les en blanc
Codi:
Sub Highlight_Blank_Cells () Dim DataSet As Range Set DataSet = Selecció DataSet.Cells.SpecialCells (xlCellTypeBlanks) .Interior.Color = vbGreen End Sub
Primer, seleccioneu l'interval de dades i executeu el codi. Destacarà totes les cel·les en blanc amb color verd.
# 14 - Amaga tots els fulls excepte un full
Codi:
Sub Hide_All_Except_One () Atenueu Ws com a full de treball per a cada Ws a ActiveWorkbook.Whesheets if Ws.Name "Main Sheet" Then Ws.Visible = xlSheetVeryHidden Next Ws End Sub
El codi anterior amaga tots els fulls, excepte el full anomenat com a "Full principal". Podeu canviar el nom del full de càlcul segons el vostre desig.
# 15 - Mostra tots els fulls de càlcul
Codi:
Sub Un hide_All () Dim Ws Com full de treball per a cada Ws a ActiveWorkbook.Whesheets Ws.Visible = xlSheetVisible Next Ws End Sub
Això mostrarà tots els fulls ocults.
# 16 - Eliminar tots els fitxers de la carpeta
Codi:
Sub Delete_All_Files () 'Podeu utilitzar-lo per esborrar tots els fitxers de la carpeta Test' 'Quan es reprengui l'error Següent Mata "C: \ Users \ Admin_2.Dell-Pc \ Desktop \ Delete Folder \ *. *" On Error GoTo 0 Finalitzar sub
Canvieu el camí de la carpeta marcat en vermell segons la supressió de la vostra carpeta.
# 17 - Suprimeix tota la carpeta
Codi:
Sub Delete_Whole_Folder () 'Podeu utilitzar-lo per esborrar la carpeta sencera. Quan es reprengui l'error següent, mata "C: \ Users \ Admin_2.Dell-Pc \ Desktop \ Delete Folder \ *. *"' En primer lloc, suprimirà tots els fitxers de la carpeta. 'Aleshores, a continuació, el codi suprimirà tota la carpeta si està buida RmDir "C: \ Users \ Admin_2.Dell-Pc \ Desktop \ Delete Folder \"' Nota: RmDir només suprimirà una carpeta buida A l'error GoTo 0 End Sub
Canvieu el camí de la carpeta marcat en vermell segons la supressió de la vostra carpeta.
# 18 - Cerqueu l'última fila usada al full
Codi:
Sub Last_Row () Dim LR As Long LR = Cells (Rows.Count, 1). End (xlUp) .Row MsgBox LR End Sub
Aquí trobem l’última fila usada al full
# 19 - Cerqueu l'última columna usada al full
Codi:
Sub Last_Column () Dim LC As Long LC = Cells (1, Columns.Count). End (xlToLeft) .Column MsgBox LC End Sub
Aquí trobem la darrera columna usada al full