Det kan være tilfeller der du må opprette en ny arbeidsbok med et visst antall ark gjennom en vba -kode eller makro. Her er en enkel makro som lar deg lage en ny arbeidsbok> åpne og deretter lagre med maksimalt 255 nye regneark. I denne eksempelmakroen vil vi lage en ny arbeidsbok med 10 regneark.
Alternativ Eksplisitt
Sub create_workbook ()
Dim wb Som arbeidsbok
Sett wb = NewWorkbook (10)
Slutt Sub
Funksjon NewWorkbook (wsCount As Integer) Som arbeidsbok
Dim OriginalWorksheetCount As Long
Sett NewWorkbook = Ingenting
Hvis wsCount 255 Avslutt deretter funksjonen
OriginalWorksheetCount = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = wsCount
Sett NewWorkbook = Workbooks.Add
Application.SheetsInNewWorkbook = OriginalWorksheetCount
Sluttfunksjon
Kode Forklaring:
Først har vi en prosedyre som heter "create_workbook”. I denne prosedyren har vi en variabel wb som arbeidsbok, og vi kaller funksjonen NewWorkbook gjennom denne variabelen. Så den nye funksjonen kalles og wscount er satt til 10 som er antallet regneark i den nye arbeidsboken.
Så går vi til den kalt funksjonen som er Funksjon NewWorkbook (wsCount som heltall) som arbeidsbok. Verdien for wsCount som er 10 blir videreført fra suben create_workbook.
Sett NewWorkbook = Ingenting
Først er NewWorkbook satt til ingenting, slik at vi kan slette andre verdier som kan tildeles den i alle tidligere koder.
Hvis wsCount 255, avslutt deretter funksjonen
Deretter må vi sjekke om verdien som sendes videre fra suben er mindre enn 1 eller større enn 255. Hvis svaret er ja på en av disse kontrollene, må du avslutte funksjonen.
OriginalWorksheetCount = Application.SheetsInNewWorkbook
Det er en parameter på siden Excel -alternativer der antall ark som skal inkluderes i en ny arbeidsbok er angitt. Vi overfører denne verdien til variabelen OriginalWorksheetCount.Variabelen vil inneholde standard antall ark som allerede var forhåndsinnstilt i excel-alternativene.
Application.SheetsInNewWorkbook = wsCount
Deretter tildeler vi verdien av wsCount som videreføres fra suben til parameteren i excel -alternativene for antall ark som skal inkluderes i en ny arbeidsbok. Så nå vil denne parameteren endres fra den gamle verdien til 10. Den gamle verdien kan være 1 eller 3 eller et annet tall som er angitt av brukeren.
Sett NewWorkbook = Workbooks.Add
Vi lager en ny arbeidsbok som er tilordnet NewWorkbook. Denne nye arbeidsboken er opprettet med antall ark spesifisert i wsCount. Du vil se en ny arbeidsbok med 10 ark med tittelen Sheet1 to Sheet10. Se bildet nedenfor for den nye filen Book3 som er opprettet.
Bildet nedenfor viser deg antall ark som ble opprettet i den nye arbeidsboken.
Tallet 10 vil også dukke opp i parameteren Application.SheetsInNewWorkbook i Excel -alternativer som på bildet nedenfor -
Application.SheetsInNewWorkbook = OriginalWorksheetCount
TheApplication.SheetsInNewWorkbook returneres til det opprinnelige nummeret som var til stede før wsCount ble angitt. Så hvis det opprinnelige tallet var 1 eller 3, vil denne parameteren nå gå tilbake til det tallet.
Hvis du likte bloggene våre, del den med vennene dine på Facebook. Og du kan også følge oss på Twitter og Facebook.
Vi vil gjerne høre fra deg, gi oss beskjed om hvordan vi kan forbedre, utfylle eller innovere arbeidet vårt og gjøre det bedre for deg. Skriv oss på e -post nettsted