Мне нужно добавить новую строку выше ячейки 1 в моей книге. Я напечатал ниже синтаксис, который я считаю, это правильно, но я получаю сообщение об ошибке из:Формат Excel из Access VBA
Объект не поддерживает это свойство или метод
Когда синтаксис попадает во второй строке моего with
block - .Rows("1:1").Select
Что мне нужно изменить, чтобы этот синтаксис выполнялся как expeceted?
Function AdddFormatting()
Dim ExportRecordSet As DAO.Recordset
Dim excelWS As Object, excelWS2 As Object
Dim xl As Object
Dim wb As Object
Dim TemplateWB As String
Set xl = CreateObject("Excel.Application")
TemplateWB = "C:\Test\Testwb.xlsx"
Set wb = xl.Workbooks.Add
Set excelWS = wb.Worksheets(1)
excelWS.Name = "AddedFromCode"
Set excelWS2 = wb.Sheets.Add(After:=wb.Sheets(wb.Sheets.Count))
excelWS2.Name = "AddedFromCode2"
xl.Application.Visible = True
With wb
.Sheets(1).Activate
.Rows("1:1").Select
'Using this syntax throws the same error
'.Rows(1).Select
.Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
.Range("A1:H1").Select
.Selection.Merge
.ActiveCell.FormulaR1C1 = "This is the text that will display as the header"
.Range("A1:H1").Select.Font.Name = "Arial"
.Range("A1:H1").Select.Font.Size = 15
.Range("A1").Activate
End With
End Function
EDIT
Per комментарий разместил @ user2676140 я изменил мой with
блок от with wb
к with excelWS
который теперь бросает ту же ошибку в строке 3 - это одно:
.Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Я думаю, что синтаксис на эта строка неверна ... .Rows (1). Выберите способ выбора полной строки. –
. Дополнительную информацию можно найти по этой ссылке: http://www.excel-easy.com/vba/examples/entire-rows- columns.html –
Если я изменю s yntax .Rows (1). Выберите, чтобы получить то же сообщение об ошибке. –