Как создать новую книгу в excel vba
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Создание книги
Чтобы создать книгу в Visual Basic, используйте метод Add . Следующая процедура создает книгу. Microsoft Excel автоматически присваивает книге имя Книга N, где N — это следующий доступный номер. Новая книга становится активной.
Sub AddOne() Workbooks.Add End Sub
Лучший способ создания книги — назначить ее объектной переменной. В следующем примере объект Workbook , возвращенный методом Add , назначается объектной переменной , newBook . Далее задается несколько свойств . newBook Вы можете легко управлять новой книгой с помощью объектной переменной.
Sub AddNew() Set NewBook = Workbooks.Add With NewBook .Title = "All Sales" .Subject = "Sales" .SaveAs Filename:="Allsales.xls" End With End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Обратная связь
Были ли сведения на этой странице полезными?
Объект Workbook (Excel)
Объект Workbook является членом коллекции Workbooks . Коллекция Книги содержит все объекты Workbook , открытые в настоящее время в Microsoft Excel.
Свойство ThisWorkbook объекта Application возвращает книгу, в которой выполняется код Visual Basic. В большинстве случаев это то же самое, что и активная книга. Однако если код Visual Basic является частью надстройки, свойство ThisWorkbook не вернет активную книгу. В этом случае активной книгой является книга, вызывающая надстройку, тогда как свойство ThisWorkbook возвращает книгу надстройки.
Если вы создаете надстройку на основе кода Visual Basic, следует использовать свойство ThisWorkbook для определения инструкции, которая должна выполняться в книге, которую вы компилируете в надстройку.
Пример
Используйте workbooks (index), где index — это имя книги или номер индекса, чтобы вернуть один объект Workbook . В следующем примере активируется одна книга.
Workbooks(1).Activate
Номер индекса обозначает порядок открытия или создания книг. Workbooks(1) — первая созданная книга, а Workbooks(Workbooks.Count) — последняя созданная. Активация книги не изменяет ее номер индекса. Все книги включаются в число индексов, даже если они скрыты.
Свойство Name возвращает имя книги. Нельзя задать имя с помощью этого свойства; Если необходимо изменить имя, используйте метод SaveAs , чтобы сохранить книгу под другим именем.
В следующем примере выполняется активация Sheet1 в книге с именем Cogs.xls (книга уже должна быть открыта в Microsoft Excel).
Workbooks("Cogs.xls").Worksheets("Sheet1").Activate
Свойство ActiveWorkbook объекта Application возвращает книгу, которая сейчас активна. В следующем примере задается имя автора для активной книги.
ActiveWorkbook.Author = "Jean Selva"
В этом примере вкладка листа из активной книги отправляется по электронной почте, используя указанный адрес электронной почты и тему. Для выполнения этого кода активный лист должен содержать адрес электронной почты в ячейке A1, тему в ячейке B1 и имя листа, отправляемого в ячейку C1.
Sub SendTab() 'Declare and initialize your variables, and turn off screen updating. Dim wks As Worksheet Application.ScreenUpdating = False Set wks = ActiveSheet 'Copy the target worksheet, specified in cell C1, to the clipboard. Worksheets(Range("C1").Value).Copy 'Send the content in the clipboard to the email account specified in cell A1, 'using the subject line specified in cell B1. ActiveWorkbook.SendMail wks.Range("A1").Value, wks.Range("B1").Value 'Do not save changes, and turn screen updating back on. ActiveWorkbook.Close savechanges:=False Application.ScreenUpdating = True End Sub
События
- Activate
- AddinInstall
- AddinUninstall
- AfterRemoteChange
- AfterSave
- AfterXmlExport
- AfterXmlImport
- BeforeClose
- BeforePrint
- BeforeRemoteChange
- BeforeSave
- BeforeXmlExport
- BeforeXmlImport
- Deactivate
- ModelChange
- NewChart
- NewSheet
- Open
- PivotTableCloseConnection
- PivotTableOpenConnection
- RowsetComplete
- SheetActivate
- SheetBeforeDelete
- SheetBeforeDoubleClick
- SheetBeforeRightClick
- SheetCalculate
- SheetChange
- SheetDeactivate
- SheetFollowHyperlink
- SheetLensGalleryRenderComplete
- SheetPivotTableAfterValueChange
- SheetPivotTableBeforeAllocateChanges
- SheetPivotTableBeforeCommitChanges
- SheetPivotTableBeforeDiscardChanges
- SheetPivotTableChangeSync
- SheetPivotTableUpdate
- SheetSelectionChange
- SheetTableUpdate
- Sync
- WindowActivate
- WindowDeactivate
- WindowResize
Методы
- AcceptAllChanges
- Activate
- AddToFavorites
- ApplyTheme
- BreakLink
- CanCheckIn
- ChangeFileAccess
- ChangeLink
- CheckIn
- CheckInWithVersion
- Close
- ConvertComments
- CreateForecastSheet
- DeleteNumberFormat
- EnableConnections
- EndReview
- ExclusiveAccess
- ExportAsFixedFormat
- FollowHyperlink
- ForwardMailer
- GetWorkflowTasks
- GetWorkflowTemplates
- HighlightChangesOptions
- LinkInfo
- LinkSources
- LockServerFile
- MergeWorkbook
- NewWindow
- OpenLinks
- PivotCaches
- Post
- PrintOut
- PrintPreview
- Protect
- ProtectSharing
- PublishToDocs
- PurgeChangeHistoryNow
- RefreshAll
- RejectAllChanges
- ReloadAs
- RemoveDocumentInformation
- RemoveUser
- Reply
- ReplyAll
- ReplyWithChanges
- ResetColors
- RunAutoMacros
- Save
- SaveAs
- SaveAsXMLData
- SaveCopyAs
- SendFaxOverInternet
- SendForReview
- SendMail
- SendMailer
- SetLinkOnData
- SetPasswordEncryptionOptions
- ToggleFormsDesign
- Unprotect
- UnprotectSharing
- UpdateFromFile
- UpdateLink
- WebPagePreview
- XmlImport
- XmlImportXml
Свойства
- AccuracyVersion
- ActiveChart
- ActiveSheet
- ActiveSlicer
- Application
- AutoSaveOn
- AutoUpdateFrequency
- AutoUpdateSaveChanges
- BuiltinDocumentProperties
- CalculationVersion
- CaseSensitive
- ChangeHistoryDuration
- ChartDataPointTrack
- Charts
- CheckCompatibility
- CodeName
- Colors
- CommandBars
- ConflictResolution
- Connections
- ConnectionsDisabled
- Container
- ContentTypeProperties
- CreateBackup
- Creator
- CustomDocumentProperties
- CustomViews
- CustomXMLParts
- Date1904
- DefaultPivotTableStyle
- DefaultSlicerStyle
- DefaultTableStyle
- DefaultTimelineStyle
- DisplayDrawingObjects
- DisplayInkComments
- DocumentInspectors
- DocumentLibraryVersions
- DoNotPromptForConvert
- EnableAutoRecover
- EncryptionProvider
- EnvelopeVisible
- Excel4IntlMacroSheets
- Excel4MacroSheets
- Excel8CompatibilityMode
- FileFormat
- Final
- ForceFullCalculation
- FullName
- FullNameURLEncoded
- HasPassword
- HasVBProject
- HighlightChangesOnScreen
- IconSets
- InactiveListBorderVisible
- IsAddin
- IsInplace
- KeepChangeHistory
- ListChangesOnNewSheet
- Mailer
- Model
- MultiUserEditing
- Name
- Names
- Parent
- Password
- PasswordEncryptionAlgorithm
- PasswordEncryptionFileProperties
- PasswordEncryptionKeyLength
- PasswordEncryptionProvider
- Path
- Permission
- PersonalViewListSettings
- PersonalViewPrintSettings
- PivotTables
- PrecisionAsDisplayed
- ProtectStructure
- ProtectWindows
- PublishObjects
- Queries
- ReadOnly
- ReadOnlyRecommended
- RemovePersonalInformation
- Research
- RevisionNumber
- Saved
- SaveLinkValues
- SensitivityLabel
- ServerPolicy
- ServerViewableItems
- SharedWorkspace
- Sheets
- ShowConflictHistory
- ShowPivotChartActiveFields
- ShowPivotTableFieldList
- Signatures
- SlicerCaches
- SmartDocument
- Styles
- Sync
- TableStyles
- TemplateRemoveExtData
- Theme
- UpdateLinks
- UpdateRemoteReferences
- UserStatus
- UseWholeCellCriteria
- UseWildcards
- VBASigned
- VBProject
- WebOptions
- Windows
- Worksheets
- WritePassword
- WriteReserved
- WriteReservedBy
- XmlMaps
- XmlNamespaces
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Обратная связь
Были ли сведения на этой странице полезными?
Как создать новую книгу в excel vba
= Мир MS Excel/Готовые решения
МЕНЮ САЙТА
Информация о сайте
Развите сайта
Приемы работы
Инструменты и настройки
Интеграция
Готовые решения
Вопросы и решения
Работа и общение
Работа форума и сайта
Библиотека
Книги по Excel
Книги по VBA
Видеосалон
Справочники
Разработчик
КАТЕГОРИИ РАЗДЕЛА
| Процедуры [13] |
| Пользовательские функции [9] |
| Полезные приёмы [45] |
Создание книги с заданным числом листов
Процедура создаёт книгу с заданным числом листов (по умолчанию — с одним)
Sub BookWithSheets(Optional ByVal Numb As Integer = 1)
Dim i As Integer
Application.DisplayAlerts = False
Workbooks.Add
Do
On Error Resume Next
Worksheets(1).Delete
Loop While Err.Number = 0
For i = 1 To Numb — 1
Worksheets.Add after:=Worksheets(Sheets.Count)
Next i
Application.DisplayAlerts = True