Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.09.2011, 17:59   #1
alexsampler
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 86
По умолчанию Интуитивная работа функции: СЦЕПИТЬ

Добрый день, господа программисты!
Вот какую проблему очень нужно решить с вашей помощью!
EXCEL 2003 PS3

Можно ли сделать так, что бы excel объединял строки по определенному условию и еще и сам отсчитывал необходимое количество строк опять же условию для этого объединения?
Все в примере
СПАСИБО!
Вложения
Тип файла: rar пример.rar (5.0 Кб, 17 просмотров)
alexsampler вне форума Ответить с цитированием
Старый 08.09.2011, 18:25   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Сделал макрос - вроде работает:

Код:
Sub test()
    Dim cell As Range, ra As Range, ar As Range, ra1 As Range, ra4 As Range
    Application.ScreenUpdating = False
    Set ra = Range("b:c").SpecialCells(xlCellTypeConstants)
    For Each cell In ra.Cells
        Set ra1 = Range(cell.EntireRow.Cells(1), cell.EntireRow.Cells(1).End(xlDown))
        Set ra4 = Range(cell.EntireRow.Cells(4), cell.EntireRow.Cells(4).End(xlDown))
        Set ar = Intersect(Range(cell, cell.End(xlDown).Offset(-1)).EntireRow, _
                           Union(ra1.EntireRow, ra4.EntireRow))
        Debug.Print cell.Address, ar.Address
        res1 = Join(Application.WorksheetFunction.Transpose(ar.Columns(1).Value))
        res4 = Join(Application.WorksheetFunction.Transpose(ar.Columns(4).Value))
        Debug.Print res1: Debug.Print res4: Debug.Print

        Range("j" & Rows.Count).End(xlUp).Offset(1).Resize(, 3).Value = _
        Array(cell, res1, res4)
    Next cell
End Sub

Пример в файле:


Последний раз редактировалось EducatedFool; 08.09.2011 в 18:32.
EducatedFool вне форума Ответить с цитированием
Старый 08.09.2011, 18:33   #3
nilem
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 616
По умолчанию

Ну раз уж нарисовал. В качестве варианта.
Вложения
Тип файла: zip пример.zip (14.2 Кб, 19 просмотров)
nilem вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод даты в функции Сцепить ogololobov2009 Microsoft Office Excel 5 18.03.2011 13:10
Использование функции сцепить Anatoly_K Microsoft Office Excel 4 10.07.2010 15:59
сцепить по чек боксам AChrist Microsoft Office Access 1 14.12.2009 19:02
Проблемы с функцией СЦЕПИТЬ motorway Microsoft Office Excel 20 12.07.2009 01:17
Извлечение значения ячейки с использованием функции Сцепить Юрийpirs2008 Microsoft Office Excel 2 03.03.2009 11:13