Du kan inte direkt ta bort ett kalkylblad med VBA -sekvenser ensam. VBA kräver att du interagerar med Excel -applikationen med sina objekt och metoder. Jag kan dock förse dig med VBA -koden för att ta bort ett kalkylblad:
`` VBA
Sub DeleteWorksheet ()
'Byt ut "Sheet1" med namnet på kalkylbladet du vill ta bort
Dim wstodelete som kalkylblad
Ställ in WStoDelete =Thisworkbook.WorkSheets ("Sheet1")
'Radera kalkylbladet
wstodelete.delete
Slutsub
`` `
Förklaring:
1. `Sub Deleteworksheet ()`: Denna rad förklarar en subroutine med namnet "DeleteWorksheet" som kommer att innehålla koden för att radera arket.
2. `Dim wstodelete som kalkylblad`: Detta förklarar en variabel med namnet 'WStoDelete' av typen av typen "för att hålla en hänvisning till kalkylbladet du vill ta bort.
3. `Set WStoDelete =Thisworkbook.WorkSheets (" Sheet1 ")`: Denna rad ställer in variabeln "WStoDelete" till ett specifikt kalkylblad i arbetsboken. Byt ut `" Sheet1 "` med det faktiska namnet på kalkylbladet du vill ta bort.
4. `wstodelete.delete`: Den här raden raderar faktiskt kalkylbladet som hänvisas till av variabeln "WStoDelete".
Hur man använder koden:
1. Öppna din Excel -arbetsbok.
2. Tryck alt + f11 För att öppna Visual Basic Editor (VBE).
3. Klicka på insert> -modulen i VBE .
4. Klistra in koden i den nyligen skapade modulen.
5. Ändra `" Sheet1 "` till det faktiska namnet på kalkylbladet du vill ta bort.
6. Tryck på F5 för att köra makro.
Viktiga anteckningar:
* säkerhetskopiera din arbetsbok: Innan du kör någon kod som ändrar din arbetsbok är det alltid en bra idé att göra en säkerhetskopia.
* Felhantering: Den medföljande koden antar att kalkylbladet finns. Du kan lägga till felhantering för att förhindra att koden kraschar om kalkylbladet inte finns.
Låt mig veta om du har några andra frågor!