Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Разное - Группировка строк в экселе

Ответить
Настройки темы
Разное - Группировка строк в экселе
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


Как можно сгруппировать строки в экселе (пользователь делает руками), чтобы потом програмно (скриптом) получать их Range и штамповать их копии. Короче нужно сделать так, чтобы пользователь мог выбирать диапазон, сохранить шаблон, а скрипт потом где-то узнать, что он выбрал и на основе содержимого ячеек как-то заполнять книги

Отправлено: 15:35, 13-04-2009

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


pva, я что то не совсем понял смысл. вот как пример:

Код: Выделить весь код
Sub Макрос1()
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Merge
    ActiveCell.FormulaR1C1 = "some text"
End Sub
Скрипт записан макросом. При его применении выделенная пользователем область группируется в 1 ячейку, и в нее пишется текст "some text".

Код: Выделить весь код
    Selection.Copy
    Range("D17").Select
    ActiveSheet.Paste
А этот код копирует в буфер выделенный диапазон и вставляет его в ячейку D17.

Или нужно было не это?

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 01:01, 14-04-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

pva pva вне форума Автор темы

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


нет, не это. Допустим есть шаблонные строчки: шапка, заголовок таблицы, строчки таблицы и подвал. Запускается скрипт, который делает запрос, копирует в документ шапку, для каждой таблицы копирует её заголовок и тиражирует строчки, потом копирует туда подвал. Я бы мог просто забить диапазоны в скрипт, но вопрос в том, чтобы этот шаблон мог править тупой пользователь.

Последний раз редактировалось pva, 25-02-2012 в 11:59.


Отправлено: 07:53, 14-04-2009 | #3


Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Ааа, т.е примерно так?
1. На определенной странице есть неопределенное количество строк, в которые заносятся данные(поле1, поле2, поле3). Туда пользователь вбивает данные.
2. На второй странице есть "шапка" - произвольное количество строк/столбцов, которые опять же пользователь может редактировать.
3. На третьей и последующих страницах может содержаться название таблицы, подвал документа и прочее...

Суть - в создании единой страницы на основе всех этих данных? Если да, то я могу поискать, я нечто подобное делал раньше.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 08:03, 14-04-2009 | #4

pva pva вне форума Автор темы

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


Что-то вроде того. Пользователь на понятном ему мышкотыкательно-экселевском языке делает себе шаблон и не парит программера :-) А скрипт берёт данные из базы и собирает отчёт. А программер пьёт чай с плюшками.
Цитата Delirium:
На второй странице есть "шапка" - произвольное количество строк/столбцов »
А как-то можно узнать диапазон, который перекрывают все ячейки в листе? чтобы тупо весь лист (только заполненную часть) раскопипастить?

Последний раз редактировалось pva, 14-04-2009 в 14:20.


Отправлено: 13:45, 14-04-2009 | #5


Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
    Dim FirstRow, FirstCol, LastRow As Integer, LastCol As Integer
    Dim theRange As Range

    FirstRow = Cells.Find(What:="*", SearchDirection:=xlNext, SearchOrder:=xlByRows).Row
    FirstCol = Cells.Find(What:="*", SearchDirection:=xlNext, SearchOrder:=xlByColumns).Column
    LastRow = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row
    LastCol = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByColumns).Column
    Set theRng = Range(Cells(FirstRow, FirstCol), Cells(LastRow, LastCol))

    MsgBox ("Первая строка=" & FirstRow & " Последняя строка=" & LastRow & " Первый столбец=" & FirstCol & " Последний столбец=" & LastCol)
Ну а из переменных уже не проблема сделать диапазон, я думаю

Взято отсюда .
Также есть свойство UsedRange, но я не тестировал его.

Код: Выделить весь код
DIM rng
rng = ActiveSheet.UsedRange
Возвращает хитрую структурку, необходимо в отладчике будет добавить Watch на данную переменную, чтобы увидеть содержимое.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:17, 15-04-2009 | #6

pva pva вне форума Автор темы

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


В общем, пока что сделал через примечания. То есть в правый нижний угол области ставится примечание, содержащее текст: шапка, заголовок_таблицы, строчка_таблицы, подвал или конец_документа.

Отправлено: 12:41, 16-04-2009 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Разное - Группировка строк в экселе

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
MySQL - Максимаотное количество строк Jonik-Mnimonik Программирование и базы данных 11 17-06-2008 08:40
Интерфейс - [решено] Пропала группировка по типу в корне проводника fergard Microsoft Windows Vista 1 10-02-2008 00:17
Разное - Группировка объектов по категориям в Моем компьютере ramzesik Microsoft Windows 2000/XP 0 31-01-2008 16:12
PEAR::Spreadsheet_Excel_Writer (группировка строк в Excel)??? kilmorn Вебмастеру 1 21-03-2007 11:23
вставка формул в экселе макросом? Naug Программирование и базы данных 2 22-09-2004 15:47




 
Переход