Группировка по условию
yellsamara
Дата: Четверг, 16.11.2017, 16:02 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Имеется макрос во вложении, который группирует по условию, но с ошибкой, макрос когда видит следующую пустую строку все нормально группирует, но когда видит несколько значений он начинает их всех группировать... нужно чтоб макрос учитывал это.
Имеется макрос во вложении, который группирует по условию, но с ошибкой, макрос когда видит следующую пустую строку все нормально группирует, но когда видит несколько значений он начинает их всех группировать... нужно чтоб макрос учитывал это. yellsamara
Ответить
Сообщение Имеется макрос во вложении, который группирует по условию, но с ошибкой, макрос когда видит следующую пустую строку все нормально группирует, но когда видит несколько значений он начинает их всех группировать... нужно чтоб макрос учитывал это. Автор - yellsamara Дата добавления - 16.11.2017 в 16:02
_Boroda_
Дата: Четверг, 16.11.2017, 16:16 |
Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16895
Репутация:
6612
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Так нужно? [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) z_ = "" End If Next i End Sub
[/vba]
Так нужно? [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) z_ = "" End If Next i End Sub
[/vba] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Так нужно? [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) z_ = "" End If Next i End Sub
[/vba] Автор - _Boroda_ Дата добавления - 16.11.2017 в 16:16
yellsamara
Дата: Четверг, 16.11.2017, 16:27 |
Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Да вроде теперь правильно работает))) только для одного столбца, можно для второго тож самое сделать? и нет ли ограничения по количеству строк? тут их может несколько тысяч.
Да вроде теперь правильно работает))) только для одного столбца, можно для второго тож самое сделать? и нет ли ограничения по количеству строк? тут их может несколько тысяч.yellsamara
Сообщение отредактировал yellsamara - Четверг, 16.11.2017, 16:27
Ответить
Сообщение Да вроде теперь правильно работает))) только для одного столбца, можно для второго тож самое сделать? и нет ли ограничения по количеству строк? тут их может несколько тысяч.Автор - yellsamara Дата добавления - 16.11.2017 в 16:27
yellsamara
Дата: Четверг, 16.11.2017, 16:42 |
Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
сам добавил)) [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) z_ = "" End If Next i r2_ = 2 r3_ = Range("E" & Rows.Count).End(3).Row For i2 = r3_ To r2_ Step -1 z_ = "; " & Range("F" & i2) & z_ If Range("B" & i2) <> "" Then Range("G" & i2) = Mid(z_, 3, 999) z_ = "" End If Next i2 End Sub
[/vba]
сам добавил)) [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) z_ = "" End If Next i r2_ = 2 r3_ = Range("E" & Rows.Count).End(3).Row For i2 = r3_ To r2_ Step -1 z_ = "; " & Range("F" & i2) & z_ If Range("B" & i2) <> "" Then Range("G" & i2) = Mid(z_, 3, 999) z_ = "" End If Next i2 End Sub
[/vba] yellsamara
Сообщение отредактировал yellsamara - Четверг, 16.11.2017, 17:08
Ответить
Сообщение сам добавил)) [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) z_ = "" End If Next i r2_ = 2 r3_ = Range("E" & Rows.Count).End(3).Row For i2 = r3_ To r2_ Step -1 z_ = "; " & Range("F" & i2) & z_ If Range("B" & i2) <> "" Then Range("G" & i2) = Mid(z_, 3, 999) z_ = "" End If Next i2 End Sub
[/vba] Автор - yellsamara Дата добавления - 16.11.2017 в 16:42
_Boroda_
Дата: Четверг, 16.11.2017, 17:14 |
Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16895
Репутация:
6612
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Не, так плохо. Много лишнего. Вот так лучше [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ x_ = "; " & Range("F" & i) & x_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) Range("G" & i) = Mid(x_, 3, 999) z_ = "" x_ = "" End If Next i End Sub
[/vba]
Не, так плохо. Много лишнего. Вот так лучше [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ x_ = "; " & Range("F" & i) & x_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) Range("G" & i) = Mid(x_, 3, 999) z_ = "" x_ = "" End If Next i End Sub
[/vba] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Не, так плохо. Много лишнего. Вот так лучше [vba]Код
Sub tt() r0_ = 2 r1_ = Range("F" & Rows.Count).End(3).Row For i = r1_ To r0_ Step -1 z_ = "; " & Range("E" & i) & z_ x_ = "; " & Range("F" & i) & x_ If Range("B" & i) <> "" Then Range("H" & i) = Mid(z_, 3, 999) Range("G" & i) = Mid(x_, 3, 999) z_ = "" x_ = "" End If Next i End Sub
[/vba] Автор - _Boroda_ Дата добавления - 16.11.2017 в 17:14
yellsamara
Дата: Четверг, 16.11.2017, 17:24 |
Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Да отлично работает! теперь без ошибок! БОЛЬШОЕ СПАСИБО! Излишнее цитирование удалено администрацией - это нарушение п.5j Правил форума
Да отлично работает! теперь без ошибок! БОЛЬШОЕ СПАСИБО! Излишнее цитирование удалено администрацией - это нарушение п.5j Правил форума yellsamara
Сообщение отредактировал yellsamara - Четверг, 16.11.2017, 17:25
Ответить
Сообщение Да отлично работает! теперь без ошибок! БОЛЬШОЕ СПАСИБО! Излишнее цитирование удалено администрацией - это нарушение п.5j Правил форума Автор - yellsamara Дата добавления - 16.11.2017 в 17:24