[easy_youtube_gallery id=uMK0prafzw0,8Uee_mcxvrw,HcXNPI-IPPM,JvMXVHVr72A,AIXUgtNC4Kc,K8nrF5aXPlQ,cegdR0GiJl4,L-wpS49KN00,KbW9JqM7vho ar=16_9 cols=3 thumbnail=hqdefault controls=0 playsinline=1 privacy=1 title=top wall=1 class=mySuperClass]
Först publicerad: 2009-05-18

VBA-kod som raderar ett visst arbetsblad

excel-deleteEtt vanligt förekommande moment i Excelprogrammering är radering av arbetsblad. Det kan t.ex. handla om temporära blad som använts till beräkningar eller för skapande av tabeller. Följande kod tar på ett effektivt sätt bort önskat blad.

Koden loopar igenom arbetsbokens blad tills den hittar det angivna bladet. Bladet raderas därefter. Om bladet inte hittas så sker heller inget.

Märk att koden begagnar sig av

Application.DisplayAlerts = False

Det betyder att vi stänger av den funktionen i Excel som via en meddelanderuta frågar om vi verkligen vill radera. Direkt efter raderingen slår vi på funktionen igen.

Kod-exempel för radering av ark

Exemplet nedan letar efter arbetsbladet “Temp” och raderar detta blad om det återfinns bland arbetsbokens ark.

Sub RaderaVisstArk()
 
'Tar bort önskat ark
Dim strArbetsBlad As String
Dim strBladSomRaderas
Dim i as Integer
 
strBladSomRaderas = "Temp"
 
For i = 1 To Sheets.Count
 Sheets(i).Activate
  strArbetsBlad = ActiveSheet.Name
   If strArbetsBlad = strBladSomRaderas Then
    Application.DisplayAlerts = False
     ActiveWindow.SelectedSheets.Delete
    Application.DisplayAlerts = True
  End If
Next
 
End Sub