Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Группировка автофигур по выделенному диапазону ячеек - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Группировка автофигур по выделенному диапазону ячеек (Макросы/Sub)
Группировка автофигур по выделенному диапазону ячеек
RipVanWinkel Дата: Понедельник, 10.07.2017, 13:26 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте, гуру экселя. Помогите решить вопрос.

В документе экселя, на листе находится несколько автофигур. Одни являются простыми автофигурами, другие - сгруппированными.
Как макросом - сгруппировать их по выделенному мышкой диапазону ячеек ?

То есть, если выделить определенный диапазон ячеек - в который некоторые автофигуры входят полностью - и нажать на кнопку макроса - то все автофигуры и группы внутри этого диапазона - сгруппируются.
Если автофигура либо группа - неполностью входит в выделенный мышкой диапазон - то их макрос не затрагивает.
К сообщению приложен файл: 857.xls(94Kb)
 
Ответить
СообщениеЗдравствуйте, гуру экселя. Помогите решить вопрос.

В документе экселя, на листе находится несколько автофигур. Одни являются простыми автофигурами, другие - сгруппированными.
Как макросом - сгруппировать их по выделенному мышкой диапазону ячеек ?

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

Автор - RipVanWinkel
Дата добавления - 10.07.2017 в 13:26
sboy Дата: Понедельник, 10.07.2017, 15:21 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1120
Репутация: 281 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Проверяйте, так надо?[vba]
Код
Sub Макрос5()
    With Selection
    l = .Left
    p = .Left + .Width
    v = .Top
    n = .Top + .Height
    End With
    Dim ar() As String
    ReDim ar(0)
    For x = 1 To ActiveSheet.Shapes.Count
        With ActiveSheet.Shapes(x)
        If .Left > l Then
            If (.Left + .Width) < p Then
                If .Top > v Then
                    If (.Top + .Height) < n Then
                        ar(UBound(ar)) = .Name
                        ReDim Preserve ar(UBound(ar) + 1)
                    End If
                End If
            End If
        End If
        End With
    Next x
    If UBound(ar) < 2 Then
        MsgBox "В выделенной области менее 2 фигур!", vbInformation
        Exit Sub
    End If
    ReDim Preserve ar(UBound(ar) - 1)
    ActiveSheet.Shapes.Range(ar).Group
End Sub
[/vba]
К сообщению приложен файл: 857.xlsm(22Kb)
 
Ответить
СообщениеДобрый день.
Проверяйте, так надо?[vba]
Код
Sub Макрос5()
    With Selection
    l = .Left
    p = .Left + .Width
    v = .Top
    n = .Top + .Height
    End With
    Dim ar() As String
    ReDim ar(0)
    For x = 1 To ActiveSheet.Shapes.Count
        With ActiveSheet.Shapes(x)
        If .Left > l Then
            If (.Left + .Width) < p Then
                If .Top > v Then
                    If (.Top + .Height) < n Then
                        ar(UBound(ar)) = .Name
                        ReDim Preserve ar(UBound(ar) + 1)
                    End If
                End If
            End If
        End If
        End With
    Next x
    If UBound(ar) < 2 Then
        MsgBox "В выделенной области менее 2 фигур!", vbInformation
        Exit Sub
    End If
    ReDim Preserve ar(UBound(ar) - 1)
    ActiveSheet.Shapes.Range(ar).Group
End Sub
[/vba]

Автор - sboy
Дата добавления - 10.07.2017 в 15:21
RipVanWinkel Дата: Понедельник, 10.07.2017, 16:17 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
sboy, да - то что надо.
Большое спасибо.
 
Ответить
Сообщениеsboy, да - то что надо.
Большое спасибо.

Автор - RipVanWinkel
Дата добавления - 10.07.2017 в 16:17
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Группировка автофигур по выделенному диапазону ячеек (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!