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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2016, 10:49   #1
omonulla1986
 
Регистрация: 02.03.2014
Сообщений: 3
По умолчанию VBA Excel - : Лекарства "Метокард" (строка 5) и "Карвидил" (строка 6) при нажатии появляются 2 раз. Что надо делать?

Здравствуйте!!! Помогите пожалуйста!
Я создал перечень лекарств для сам в виде программа. Некоторые специалисты помогали. Но сейчас маленькая проблема: Лекарства "Метокард" (строка 5) и "Карвидил" (строка 6) при нажатии появляются 2 раз. Что надо делать?
Спасибо заранее
Вложения
Тип файла: xls !MEDICAMEN.xls (83.0 Кб, 22 просмотров)
omonulla1986 вне форума Ответить с цитированием
Старый 04.12.2016, 11:35   #2
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
.........
For Each CheckBox In ActiveSheet.OLEObjects
      If TypeName(CheckBox.Object) = "CheckBox" Then
..........
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 04.12.2016, 12:32   #3
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Интересно - это глюк или можно найти объяснение, почему эти два элемента дублируются в DrawingObject? Я причину не нашёл...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 04.12.2016, 14:59   #4
Step_UA
Форумчанин
 
Аватар для Step_UA
 
Регистрация: 09.06.2011
Сообщений: 388
По умолчанию

На самом деле лист просто содержит 10 объектов, причем первый и второй это прямоугольники (странно что их наименования CheckBox4 и CheckBox5), у которых установлено свойство Visible в False.
Если они нужны, то в код следует добавить проверку их видимости или просто удалить
Код:
ActiveSheet.Shapes(1).delete
ActiveSheet.Shapes(1).delete
на неконкретные вопросы даю неконкретные ответы ...
Step_UA вне форума Ответить с цитированием
Старый 04.12.2016, 15:23   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Я вижу что первый и второй точно такие же чекбоксы, как девятый и десятый, прямоугольник там один - третий.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 04.12.2016, 15:32   #6
Step_UA
Форумчанин
 
Аватар для Step_UA
 
Регистрация: 09.06.2011
Сообщений: 388
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Я вижу что первый и второй точно такие же чекбоксы, как девятый и десятый, прямоугольник там один - третий.
Я писал о номерах в перечислении Shapes. Выполните код
Код:
ActiveSheet.shapes(1).visible=true
ActiveSheet.shapes(1).select
при выделении появляется вкладка "Средства рисования/Формат" (2007) ... ошибся по поводу прямоугольника, это надписи, но в контексте задачи это не так уж и важно
на неконкретные вопросы даю неконкретные ответы ...
Step_UA вне форума Ответить с цитированием
Старый 04.12.2016, 15:42   #7
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Да, когда удалил два первых элемента - то проявились эти две "рамки".
Но смущает почему при выполнении
Код:
    For Each el In ActiveSheet.DrawingObjects
        Debug.Print el.Name, el.TopLeftCell.Address
    Next
результат
CheckBox4 $A$5
CheckBox5 $A$6
Прямоугольник 1 $B$1
CheckBox170 $A$1
CheckBox1 $A$2
CheckBox2 $A$3
CheckBox3 $A$4
CheckBox6 $A$7
CheckBox4 $A$5
CheckBox5 $A$6

Ведь эти "надписи" расположены ниже таблицы, и если первые два чекбокса удалить, то тогда этот код выдаёт уже такой результат:
CheckBox4 $B$8
CheckBox5 $B$6
Прямоугольник 1 $B$1
CheckBox170 $A$1
CheckBox1 $A$2
CheckBox2 $A$3
CheckBox3 $A$4
CheckBox6 $A$7

Имхо налицо глюк.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 04.12.2016, 16:49   #8
Step_UA
Форумчанин
 
Аватар для Step_UA
 
Регистрация: 09.06.2011
Сообщений: 388
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Имхо налицо глюк.
Однозначно ... это видно по совпадению наименований
на неконкретные вопросы даю неконкретные ответы ...
Step_UA вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сколько раз строка встречается в тексте. Алерон Помощь студентам 0 22.05.2012 21:42
Появляются лишние 000 при открытии .xls файла через vba?! budda999 Microsoft Office Excel 3 07.12.2011 22:00
Сколько раз строка-образец входит в строку, в которой её надо найти? Vja4eslav Microsoft Office Excel 4 07.12.2011 11:18
Строка...незнаю что делать Skvid Помощь студентам 1 05.04.2010 22:42
Строка состаяния или загрузачная строка Sergeu Мультимедиа в Delphi 8 27.08.2008 10:32