![]() |
#16 |
Участник
|
Цитата:
Сообщение от InTacto
![]() Задать границы
Код: SetBorder(xlRowIDPar : Integer;xlColIDPar : Integer;Border : Integer) // Стандартные индексы границ ячейки Excel // 1. xlEdgeLeft = 7 (левая) // 2. xlEdgeRight = 10 (правая) // 3. xlEdgeTop = 8 (верхняя) // 4. xlEdgeBottom = 9 (нижняя) // 5. xlDiagonalDown = 5 (диагональ лево верх - право низ) // 6. xlDiagonalUp = 6 (диагональ право верх - лево низ) // Задается стиль линии: 1 - обычная сплошная CASE Border OF 1: XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.Item(7).LineStyle := 1; 2: XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.Item(10).LineStyle := 1; 3: XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.Item(8).LineStyle := 1; 4: XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.Item(9).LineStyle := 1; 5: XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.Item(5).LineStyle := 1; 6: XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.Item(6).LineStyle := 1; END; // толщины линий для каждой стороны задаются через св-во Weight XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.Item(7).Weight = 3 // обрамляющая, заполняются все 4 стороны XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).Borders.LineStyle := 1; GetxlColID(ColumnNo : Integer) : Text[30] xlColIDLoc := ''; IF ColumnNo <> 0 THEN BEGIN x := ColumnNo - 1; c := 65 + x MOD 26; xlColIDLoc[10] := c; i := 10; WHILE x > 25 DO BEGIN x := x DIV 26; i := i - 1; c := 64 + x MOD 26; xlColIDLoc[i] := c; END; FOR x := i TO 10 DO xlColIDLoc[1+x-i] := xlColIDLoc[x]; END; EXIT(xlColIDLoc); GetxlRowID(RowNo : Integer) : Text[30] xlRowIDLoc := ''; IF RowNo <> 0 THEN xlRowIDLoc := FORMAT(RowNo); EXIT(xlRowIDLoc); Код: XlWrkSht.Range(GetxlColID(xlColIDPar) + GetxlRowID(xlRowIDPar)).WrapText := TRUE; |
|