Здравствуйте, уважаемые специалисты по VBA. Помогите решить проблему.
Есть макрос, который по списку в таблице - накладывает отдельные фрагменты копии одной сгруппированной фигуры - на отдельно стоящую фигуру.
Но сейчас макрос работает по переменным, заданным с помощью команды ListColumns. (Это видимо особый объект - саморасширяющийся список с сортировкой - в столбцах А:В)
Как выполнить тот же самый макрос - если таблица будет обычной и находится в координатах Y9:Z16 ?
Здравствуйте, уважаемые специалисты по VBA. Помогите решить проблему.
Есть макрос, который по списку в таблице - накладывает отдельные фрагменты копии одной сгруппированной фигуры - на отдельно стоящую фигуру.
Но сейчас макрос работает по переменным, заданным с помощью команды ListColumns. (Это видимо особый объект - саморасширяющийся список с сортировкой - в столбцах А:В)
Как выполнить тот же самый макрос - если таблица будет обычной и находится в координатах Y9:Z16 ?radioamator
Set pLo = ActiveSheet.ListObjects(1) sourceNames = pLo.ListColumns("source").DataBodyRange.Value targetNames = pLo.ListColumns("target").DataBodyRange.Value For i = 1 To UBound(sourceNames) NextCloneAndMove ActiveSheet.Shapes(sourceNames(i, 1)), ActiveSheet.Shapes(targetNames(i, 1)) Next
[/vba] на [vba]
Код
sourceNames = Range("Y10:Y16").Value targetNames = Range("Z10:Z16").Value For i = 1 To UBound(sourceNames) If sourceNames(i, 1) <> "" Then NextCloneAndMove ActiveSheet.Shapes(sourceNames(i, 1)), ActiveSheet.Shapes(targetNames(i, 1)) Next
[/vba] И да, в диапазоне столбцы перепутаны, группы и названия
Здравствуйте. Замените эти строчки [vba]
Код
Set pLo = ActiveSheet.ListObjects(1) sourceNames = pLo.ListColumns("source").DataBodyRange.Value targetNames = pLo.ListColumns("target").DataBodyRange.Value For i = 1 To UBound(sourceNames) NextCloneAndMove ActiveSheet.Shapes(sourceNames(i, 1)), ActiveSheet.Shapes(targetNames(i, 1)) Next
[/vba] на [vba]
Код
sourceNames = Range("Y10:Y16").Value targetNames = Range("Z10:Z16").Value For i = 1 To UBound(sourceNames) If sourceNames(i, 1) <> "" Then NextCloneAndMove ActiveSheet.Shapes(sourceNames(i, 1)), ActiveSheet.Shapes(targetNames(i, 1)) Next
[/vba] И да, в диапазоне столбцы перепутаны, группы и названияPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816