Страницы: 1
RSS
Проблема с передачей значения глобальной переменной в другой модуль, Обнуляются значения глобальной переменной при переходе из формы в модуль
 
Уважаемые гуру!
Такая ситуация. В Модуль1 объявил глобальную переменную push. Есть форма, там формируется список в ComboBox1. Далее выбираю значение из комбобокса, присваиваю его значение глобальной переменной push по событию ComboBox1_Change(). Пока нахожусь в коде формы, значение соответствует выбранному в комбобоксе. Затем идет возврат на Модуль1. Значение push обнуляется. Подскажите плиз, что не так делаю. Заранее благодарю.

Код Модуль1
Код
Option Explicit
Public push As String
   
 Private Sub Сформировать отчет()
    Пушеры.Show
    push = Пушеры.ComboBox1.Value
End Sub

Код формы

Public Sub ComboBox1_Change()
push = Me.ComboBox1.Value
Пушеры.Hide
End Sub

Private Sub UserForm_Initialize()
With Me.ComboBox1
.AddItem "Ласточкин Владимир"
.AddItem "Меташев Станислав"
.AddItem "Рощупкина Олеся"
.AddItem "Трофимова Юлия"
.AddItem "Ярмоленко Яна"
End With
End Sub
 
файл бы глянуть.
п.с. зачем эта строчка? push = Пушеры.ComboBox1.Value
 
Цитата
alsam2009 написал: Значение push обнуляется.
Оно становится равно
Код
push = Пушеры.ComboBox1.Value
Согласие есть продукт при полном непротивлении сторон
 
Цитата
V написал:
файл бы глянуть.п.с. зачем эта строчка? push = Пушеры.ComboBox1.Value
Файл большой и честно говоря с конфиденциальной информацией )
Сделал новый файл с той же формой (скопировал) и вставил кусок кода. Что за чудеса? Значение push передается! А в моем файле, который большой. Вот все то же самое, а значение обнуляется. Уже голову сломал. Может в файле какие настройки стоят? Не понимаю почему так?  
 
Цитата
alsam2009 написал: Вот все то же самое
Значит не все или не тоже самое. Без файла гадать долго будем
Согласие есть продукт при полном непротивлении сторон
 
Цитата
alsam2009 написал: Файл большой и честно говоря с конфиденциальной информацией
Замените минометы на апельсины, ФИО реальные на вымышленные. Выложите в архиве или, в крайнем случае, на файлообменник
Согласие есть продукт при полном непротивлении сторон
 
Готово. Странно строк немного а файл весит 2,5 мб. Явно там чего то лишнего много, может поэтому и нет передачи значения в модуль из формы.
https://cloud.mail.ru/public/5rzL/4WtqGFpDU
 
Ошибка не воспроизводится в Вашем примере
Согласие есть продукт при полном непротивлении сторон
 
Ну как же не производится? Захожу в код формы. Выделяю переменную push добавляю ее в Quick Watch. Запускаю пошагово по F8 код Модуль1. Переходит на форму, выбираю значение в комбобоксе. Значение в Quick Watch пока идет следующая строка кода формы сохраняется, но как только заканчивается и идет переход на код Модуль1. Значение становится Out of context. У Вас под другому?
Изменено: alsam2009 - 27.06.2019 12:52:49
 
не там смотрите :)
добавьте в модуль строку в конце кода
Код
MsgBox push

и увидите.
Изменено: V - 27.06.2019 11:50:59
 
действительно все так и есть ) а почему в Quck Watch значение обнуляется?
 
Вот что Гуру животворящие делают! Одно только обращение к Вам чудеса творит. Все заработало!! Спасибо Вам огромное, респект и уважуха! )
Страницы: 1
Наверх