построение отчётов

Тема в разделе "Lotus - Программирование", создана пользователем velitchestvo, 17 май 2006.

Статус темы:
Закрыта.
  1. velitchestvo

    velitchestvo Гость

    Строю отчёт в экселе из Лотуса. Нужно сделать границы ячеек в которые копируются данные из вьюхи чёрными линиями вокруг.
     
  2. oshmianski

    oshmianski Гость

    Касается всего MS Office. Пишешь макрос, открываешь его в редакторе VB, смотришь код, константы и потрируешь на LS.

    Range("E8").Select
    With Selection.Borders(xlEdgeLeft)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeTop)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeBottom)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeRight)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
     
  3. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    В хелпе по VBA всё расписано.
    Свойства Cells или Range:
    .Borders.LineStyle - тип
    .Borders.Weight - толщина
    Можно задать стороны.
    .Borders(8) - верхняя
    .Borders(7) - леввая
    .Borders(10) - правая
    .Borders(9) - нижняя
     
  4. velitchestvo

    velitchestvo Гость

    Я видел макрос, просто выдаётся ошибка "Ole authomation object error"

    ...

    Set ExcelObj = CreateObject("Excel.Application")
    Set App = ExcelObj.Application

    ...
    app.Workbooks("Отчёт по курсам.xls").activate
    app.Workbooks("Отчёт по курсам.xls").Worksheets("Экзамены").Activate
    Set Sheet = App.ActiveSheet

    ...
    Set R = Sheet.Range("A3:I3")
    r.Borders(xlEdgeLeft).LineStyle = xlContinuous <<< "Ole authomation object error"
    r.Borders(xlEdgeLeft).Weight = xlThin
    r.Borders(xlEdgeLeft).ColorIndex = xlAutomatic
     
  5. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Для: velitchestvo
    А что такое xlContinuous, xlThin и xlAutomatic ?

    и xlEdgeLeft ?
     
  6. oshmianski

    oshmianski Гость

    вот рабочий вариант
    Dim xlApp As Variant
    Dim App As Variant
    Dim xlsheet As Variant
    Dim r As Variant

    Set xlApp = CreateObject("Excel.Application")

    With xlApp
    .Workbooks.Add
    Set xlsheet = .Workbooks(1).Worksheets(1)
    xlsheet.Name = "Отчет"
    .Visible=True
    End With
    Set r=xlsheet.Cells(1,2)

    r.Borders(7).LineStyle = 1
    r.Borders(7).Weight = 2
    r.Borders(7).ColorIndex = -4105
     
  7. oshmianski

    oshmianski Гость

    Вот тебе еще :)

    Dim xlApp As Variant
    Dim App As Variant
    Dim xlsheet As Variant
    Dim Selection As Variant

    Const xlEdgeLeft = 7
    Const xlEdgeTop = 8
    Const xlEdgeBottom = 9
    Const xlEdgeRight = 10
    Const xlContinuous = 1
    Const xlThin = 2
    Const xlAutomatic = -4105

    Set xlApp = CreateObject("Excel.Application")

    With xlApp
    .Workbooks.Add
    Set xlsheet = .Workbooks(1).Worksheets(1)
    xlsheet.Name = "Отчет"
    .Visible=True
    End With

    xlApp.Range("D11:K11").Select
    Set Selection = xlApp.Selection
    With Selection.Borders(xlEdgeLeft)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeTop)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeBottom)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeRight)
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
    End With
     
  8. velitchestvo

    velitchestvo Гость

    Спасибо oshmianski!
    Не знал что надо xl... как константы обозначить
     
  9. oshmianski

    oshmianski Гость

    а этого никто и не говорил. никто не мешает тебе их просто как переменные объвить.
     
Загрузка...
Похожие Темы - построение отчётов
  1. yyyuuu
    Ответов:
    2
    Просмотров:
    1.059
  2. Gargon
    Ответов:
    5
    Просмотров:
    858
  3. Dragon108
    Ответов:
    2
    Просмотров:
    936
  4. klyblg
    Ответов:
    0
    Просмотров:
    1.523
  5. dannyblinov
    Ответов:
    0
    Просмотров:
    1.236
Статус темы:
Закрыта.

Поделиться этой страницей