Страницы: 1
RSS
Перестали работать кнопки вызова макросов
 
Добрый день.
Сегодня обнаружил что перестали работать кнопки для вызова макроса.
Есть старые версии файла - в них кнопки работают
а в последних они стали мертвые..
Что то типа http://www.excelworld.ru/forum/10-9107-1
ни кто не сталкивался?
 
Цитата
Алексей Мишин пишет: ни кто не сталкивался?
Вы, наверное, из числа последних  :)   http://www.excel-vba.ru/microsoft-lishil-excel-2007-i-2010-elementov-activex/
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=62121&TITLE_SEO=62121-oshibka-32809-pri-otkrytii-fayla-na-drugom-kompyutere&PAGEN_1=2
Посмотрите здесь, мы исправили ошибки... обновления и ВАТник.(при чем я так понимаю все это делать надо на всех компах иначе на одних будут макросы работать а на других нет.)
Изменено: alexthegreat - 21.01.2015 10:36:59
 
У нас в компании к сожалению только сейчас установили это апдейт. поэтому так поздно и написал.
но совет по удалению exd  помог...
жаль что когда в сети 2000 компьютеров и профиль пользователя на диске D надо все это делать руками.  
 
Доброго дня. Помогите найти ошибку пожалуйста, все отлично работало, но сейчас перестала работать кнопка вызова формы "добавить заявочный лист", в других книгах все работает.  
 
Где лист "Автотранспорт"?
 
Цитата
Юрий М написал:
Где лист "Автотранспорт"?
я их удалила потому что очень большой объем файла, даже заархивированного. На листах автотранспорт и сотрудники просто храняться данные для добавления в комбобоксы на форме. Размер файла  больше 24000 КБ(((
Изменено: Kcuxa_xa - 18.01.2019 13:51:37
 
Цитата
Kcuxa_xa написал: я их удалила
Поэтому и ничего не работает
Согласие есть продукт при полном непротивлении сторон
 
У меня ругается, потому что нет этого листа. А дальше будет ругаться, потому что нет листов "Ремонтные работы", "Сотрудники"... Процедура инициализации просит эти листы )  
 
Цитата
Kcuxa_xa написал: просто храняться данные
Эти данные (листы) нужны для запуска формы
Согласие есть продукт при полном непротивлении сторон
 
Цитата
Kcuxa_xa написал:
Помогите найти ошибку пожалуйста
а как Вы поняли, что не работает? Ошибка появляется? Если да - какая? Если нет - с чего мысль, что что-то не работает?
Может ошибка стала появляться при вызове календаря? Попробуйте тогда вызывать формы в немодальном режиме:
Код
Newzaiavka.Show 0
А может ошибка такая? - Variable not defined или что такое Option Explicit и зачем оно нужно?
Потому что Option Explicit есть, а объявления i - нет.
После строки
Код
Private Sub CommandButton1_Click
добавить
Код
Dim i As long
Изменено: Дмитрий(The_Prist) Щербаков - 18.01.2019 14:02:50
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
В моем рабочем файле все листы есть в наличии, но он подсвечивает строку
Newzaiavka.Show
 
Цитата
Kcuxa_xa написал:Newzaiavka.Show
А сама форма то есть ?   ;)
"Все гениальное просто, а все простое гениально!!!"
 
Kcuxa_xa, без Вашего файла сложно сказать, в чём причина. Зайдите в модуль формы, в процедуру инициализации, на строке Me.Caption = ... поставьте точку останова, и пройдите пошагово (F8) - увидите, на какой строке сбой.
 
Цитата
Kcuxa_xa написал:
но он подсвечивает строку
значит ошибка где-то внутри формы при инициализации. Сделайте следующее:
в редакторе VBE зайдите в Tools -Options. Вкладка General. Поставьте переключатель на пункт Break in ClassModule.
Запустите форму кнопкой с листа и посмотрите на какой строке внутри формы будет ошибка и какая именно. Опишите её здесь.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
Дмитрий(The_Prist) Щербаков написал:
Опишите её здесь.
да видимо в форме проблема. Прикладываю фото ошибки и строчки кода. Это комбобокс в форме с данными из листа "сотрудники". Я так понимаю он не видит этот лист?
 
Где  этот лист  в Вашем файле 8-0
Код
'   заполняем вып.списки(комбобоксы)
  With Sheets("Автотранспорт")
    Me.grz.List = .Range("A1", .Cells(Rows.Count, "A").End(xlUp)).Value

End With
Посмотрите свой файл ,который Вы прикрепили !!!"
Изменено: Logistic - 18.01.2019 15:13:41
 
Цитата
Kcuxa_xa написал:да видимо в форме проблема.
В ее инициализации. Виной тому отсутствие листов, которые вы удалили.
Изменено: Nordheim - 18.01.2019 15:18:11
"Все гениальное просто, а все простое гениально!!!"
 
а можно это теперь как-то починить? 8-0  
 
Logistic, про этот лист уже писалось (см. #6). Да и про другие тоже. Читайте ВСЮ переписку.
 
Скорее всего в первом столбце на листе Сотрудники просто нет данных. А Range().Value тогда возвращает не массив, а значение одной конкретной ячейки.
По сути решить это можно примерно так:
Код
With Sheets("Сотрудники")
    Dim arr
    arr = .Range("A1", .Cells(Rows.Count, "A").End(xlUp)).Value
    If Not IsArray(arr) Then
        ReDim arr(1 To 1)
        arr(1) = .Range("A1", .Cells(Rows.Count, "A").End(xlUp)).Value
    End If
    Me.fio.List = arr
End With
Изменено: Дмитрий(The_Prist) Щербаков - 18.01.2019 15:30:50
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
Дмитрий(The_Prist) Щербаков написал:
Скорее всего в первом столбце на листе Сотрудники просто нет данных.
нет данные есть, одна строчка, но есть((((
 
Kcuxa_xa, У меня вопрос, как вы собираетесь использовать эту форму, если там все ComboBox(ы) заполняются с несуществующих листов?
"Все гениальное просто, а все простое гениально!!!"
 
Цитата
Kcuxa_xa написал:
одна строчка, но есть((((
одна строчка это не массив.
"Все гениальное просто, а все простое гениально!!!"
 
Цитата
Kcuxa_xa написал:
одна строчка, но есть
см. мое сообщение выше

P.S. Господа, Вы все так привязались к отсутствию листов, что совсем забыли тот факт, что их нет только у нас, на форуме :) Девушка их удалила только для загрузки файла на форум, в реальности у неё они есть в файле
Изменено: Дмитрий(The_Prist) Щербаков - 18.01.2019 15:48:07
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
Nordheim написал:
одна строчка это не массив.
спасибо вам огромное!!!! В этом все и дело. Один сотрудник же!!! Добавила еще записи и все заработала форма
 
Цитата
Kcuxa_xa написал:В этом все и дело
В сообщении #21 Вам Дмитрий(The_Prist) Щербаков, представил код для которого не имеет значение одна строчка или нет.
"Все гениальное просто, а все простое гениально!!!"
 
Цитата
Дмитрий(The_Prist) Щербаков написал: их нет только у нас,
Пропустил этот факт  8-0
"Все гениальное просто, а все простое гениально!!!"
Страницы: 1
Наверх