Я работаю и немного ударил блокпост. Для одного я не самый сильный программист, мне просто дали эту задачу, но ударил блокпост (я думаю, его синтаксис, но не уверен).vba ссылка на объект из пользовательской формы не работает
Мы провели много исследований, чтобы найти некоторые корреляции данных для некоторых наших менее технических консультантов, и этот инструмент VBA станет для них быстрой ссылкой, чтобы дать клиентам прогнозы в реальном времени. Вопрос не имеет отношения к вопросу.
Я создал класс, который должен содержать значения, а затем план должен был ссылаться на класс из пользовательской формы VBA. Когда я ссылаюсь на класс, я не получаю значение, которое я сохранил, но получаю имя свойства.
Private Sub ddMonthOfUse_Change()
Dim mv As String
Set chillWater = New clsMonth
With chillWater
.Janurary = 0.7136
.Feburary = 0.6755
.March = 0.6528
.April = 0.7773
.May = 0.8213
.June = 0.8715
.July = 0.9
.August = 1.0243
.September = 1.0516
.October = 0.8514
.November = 0.7095
.December = 0.6994
End With
Set DX = New clsMonth
With DX
.Janurary = 0.5777
.Feburary = 0.5536
.March = 0.5166
.April = 0.6112
.May = 0.7035
.June = 0.75
.July = 0.8
.August = 0.8345
.September = 0.9333
.October = 0.6865
.November = 0.5976
.December = 0.4907
End With
MsgBox chillWater.month
End Sub
В модуле класса У меня есть этот
Option Explicit
'property decleration
Public Janurary As Single
Public Feburary As Single
Public March As Single
Public April As Single
Public May As Single
Public June As Single
Public July As Single
Public August As Single
Public September As Single
Public October As Single
Public November As Single
Public December As Single
Public chillWater As clsMonth, DX As clsMonth
Public Property Get month() As String
month = Main.ddMonthOfUse.value
End Property
Вместо окна сообщения, возвращая значение, если пользователь выбирает месяц март окно сообщения говорит «Март». Если, например, я заменю ссылку на раскрывающийся список и просто напечатаю March, я получу значение.
Я не могу понять это для жизни меня. Пожалуйста, имейте в виду, что я вообще не ветеран-программист, у меня есть очень рудиментарное знание предмета, поэтому я мог бы быть совершенно здесь. Также я должен упомянуть, что окно сообщения не является окончательным использованием информации, я просто тестировал, чтобы узнать, правильно ли я это называю.
Что такое 'Main.ddMonthOfUse'? –
Это combobox в пользовательской форме – ct4242
Я предполагаю, что вы наполнили свой combobox «Январь Февраль Март ...», не так ли? –