![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 16.04.2010
Сообщений: 49
|
![]()
Пишу на ВБА. В конце рисуеться линия, в зависимости от значений. А когда вношу новые значения линия рисуеться новая ,а старая остаеться .Как убрать старую?
|
![]() |
![]() |
![]() |
#2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
С такими вопросами обращайтесь на форум телепатов.
А если хотите, чтобы вам помогли на этом форуме, выкладывайте пример файла с кодом и линиями. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 16.04.2010
Сообщений: 49
|
![]()
))я просто думал что такой вопрос токо ламеры задают...
l1 = [C30].Left l2 = l1 + d1 + d2 + d3 + d4 v = [C30].Top - [A6] ActiveSheet.Shapes.AddLine(l1, v, l2, v).Select Selection.ShapeRange.Line.Weight = 1.5 таким образом я рисую линию....а потом когда ввожу новые даные, то эта линия не просто меня ет свое место, рисуеться новая , а старая остаеться....я думаю что есть какаето простенькая команда которая удалюет старую линию, перед выполнением програмы.а какая?)))) |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
![]()
А мне помог бубен
Код:
Анализ,обработка данных Недорого
|
![]() |
![]() |
![]() |
#5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
не исключаю, что вот так можно снести последнюю нарисованную линию:
ActiveSheet.Shapes(ActiveSheet.Shap es.Count).delete это предположение. Пробуйте, проверяйте. т.е. прежде чем рисовать линию - удаляем предыдущую, основываясь на предположении что она последняя в коллекции Shapes.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#6 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
Совет doober представляется самым верным: присвоить имя построенной линии и удалять по имени. Заодно посмотрите, как правильно работать с объектами Shape
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
А по-моему, в данном случае есть смысл не удалять и рисовать, а вырезать и вставлять.
Чем шире угол зрения, тем он тупее.
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]()
а зачем вооюще удалять/рисовать и/или вырезать/вставлять? Не проще ли просто переместить?
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 16.04.2010
Сообщений: 49
|
![]()
ActiveSheet.Shapes(ActiveSheet.Shap es.Count).delete - работает отлично!
Всем огромное спсибООООООООО! |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вертикальные линии в отчете | Nikolaeva | БД в Delphi | 3 | 30.07.2019 09:45 |
Как изменить цвет линии? | _Studentka_ | Общие вопросы .NET | 9 | 05.04.2010 18:28 |
динамические линии | DIMEDROL1985 | Помощь студентам | 2 | 24.01.2010 00:37 |
очистка get | Gromsky | PHP | 1 | 19.08.2009 19:15 |
ЛИНИИ УРОВНЯ (ПАСКАЛЬ) | mens-evgenij | Помощь студентам | 1 | 22.05.2009 09:50 |