Что нового

Как изменить формат запись в excel через auto it и сделать таблицу

shyra1976

Новичок
Сообщения
71
Репутация
0
Где я ошибаюсь в коде
Спасибо
PS
_ExcelFontSetProperties - не работает

Код:
#include <Array.au3>
#include <Excel.au3>
#include <MsgBoxConstants.au3>


Local $oAppl = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeWrite Example", "Error creating the Excel application object." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookNew($oAppl)
If @error Then
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeWrite Example", "Error creating the new workbook." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oAppl)
    Exit
 EndIf
 
_Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Missing","A1")
$oWorkbook.Columns('A').NumberFormat = '20'
;~  $oWorkbook.Font.Size = 20
;~ $oWorkbook.Font.Size.Application.Selection.TypeText(15)
;~  $oWorkbook.Font.Name = "Arial"


Local $aArray1D[3] = ["AA", "BB", "CC"]
_Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $aArray1D, "A3")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeWrite Example 2", "Error writing to worksheet." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
shyra1976 [?]
_ExcelFontSetProperties - не работает
Если мне не изменяет память, то Font относится к Range.
Код:
#include <Excel.au3>

Global Const $xlDash = 4, $xlEdgeLeft = 7, $xlInsideHorizontal = 12, $xlMedium = -4138

$oAppl = _Excel_Open()
$oExcel = _Excel_BookNew($oAppl)
$oRange = $oExcel.Application.Sheets(2).Range('A1:H10')
With $oRange
	.Interior.ColorIndex = 36 ;заливка (1 - 56)
	.Font.Name = 'Tahoma'; имя шрифта
	.Font.Size = 14 ; размер шрифта
	.Font.ColorIndex = 3 ; цвет шрифта (1 - 56)
	.Font.Bold = True ;жирный шрифт
	.Font.Italic = True ;курсив
	.HorizontalAlignment = $xlCenter ;расположение по горизонтали
	.VerticalAlignment = $xlCenter ;по вертикали
EndWith
For $i = $xlEdgeLeft To $xlInsideHorizontal
	With $oRange.Borders($i)
		.LineStyle = $xlDash ;стиль линии
		.Weight = $xlMedium ;толщина линии
		.ColorIndex = 5 ; цвет линии(1 - 56)
	EndWith
Next
$oExcel.Application.Sheets(2).Range('D1') = 'Test'
Добавил номер листа для таблицы.


Добавлено:
Сообщение автоматически объединено:

Подробнее про Font можно посмотреть здесь: Font Object
 
Верх