Помогите, похалуйста, с созданием переменной...

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
ahuni14
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 28.10.2012 (Вс) 14:37

Помогите, похалуйста, с созданием переменной...

Сообщение ahuni14 » 10.11.2013 (Вс) 15:41

Всем привет!

Подскажите, пожалуйста, можно ли как-нибудь реализовать следующий код:

Sub Primer ()
Dim MojPrimer As Single, B As String

MojPrimer=1,25
B="Primer"

MsgBox Moj & A
End Sub

Те в MsgBox объеденив оба выражения в итоге на экране появится слово "MojPrimer", а мне нужно, чтобы в MsgBox каким-то образом при таком расскладе выдавал значение переменной MojPrimeр = 1,25. Т.е. превратить выдаваемое слово "MojPrimer" в переменную с таким же именем.

Реально ли сделать такое?

Заранее всем благодарен за помощь

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Помогите, похалуйста, с созданием переменной...

Сообщение ger_kar » 10.11.2013 (Вс) 15:54

Если честно сути вопроса я нихера не понял.
Объявляются переменные Dim MojPrimer As Single, B As String, далее присвоение тоже идет этим двум переменным
MojPrimer=1,25
B="Primer"

А в MsgBoxиспользуются совершенно другие нигде не объявленные Moj и A

Почему бы не использовать MsgBox "MojPrimer=" & MojPrimer или MsgBox "Moj" & B & MojPrimer.
Бороться и искать, найти и перепрятать

ahuni14
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 28.10.2012 (Вс) 14:37

Re: Помогите, похалуйста, с созданием переменной...

Сообщение ahuni14 » 10.11.2013 (Вс) 16:04

в общем суть вопроса в том, чтобы программа поняла сочетание "Moj & A", как переменную MojPrimer и выдала мне число 1,25. Так, как это предлагаете вы меня не устраивает. Мне нужно получить то, что я попытался описать

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Помогите, похалуйста, с созданием переменной...

Сообщение ger_kar » 10.11.2013 (Вс) 16:12

ahuni14 писал(а):Мне нужно получить то, что я попытался описать
Это какая то абсолютная бессмыслица.
ahuni14 писал(а):чтобы программа поняла сочетание "Moj & A"
Что есть сочетание "Moj & A"? Строка или две переменных Moj и A? Тогда почему они не объявляются?
Лучше напиши задачу без всяких переменных и кода, в стиле дано то то и то то, нужно получить такой то результат.
Бороться и искать, найти и перепрятать

ahuni14
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 28.10.2012 (Вс) 14:37

Re: Помогите, похалуйста, с созданием переменной...

Сообщение ahuni14 » 10.11.2013 (Вс) 16:39

прошу прощения, наверное, я ошибся: MsgBox "Moj" & A...Te "Moj" это строка...

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Помогите, похалуйста, с созданием переменной...

Сообщение iGrok » 10.11.2013 (Вс) 17:05

Ну, что хочет ТС я понял - он хочет возможность получить значение переменной по имени переменной, без прямой ссылки.

А вот можно ли это как-то сделать, и как именно - этого я не знаю.

Но в любом случае, не думаю, что в этом есть реальная необходимость. ahuni14, объясни, чего ты хочешь этим добиться. Потому что скорее всего цель у тебя - не просто получение значения переменной по её имени, а что-то большее, и вот это что-то, возможно, можно сделать более разумным способом.
label:
cli
jmp label

ahuni14
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 28.10.2012 (Вс) 14:37

Re: Помогите, похалуйста, с созданием переменной...

Сообщение ahuni14 » 10.11.2013 (Вс) 18:19

iGrok, спасибо, ты все абсолютно правильно понял!

Такая необходимость есть. Попробую объяснить: У меня объявлены 4 переменные по зарплате: LohnImya1, LohnImya2, LohnImya3 i LohnImya4 As Single...Под Imya1-4 подразумеваются реальные имена сотрудников. В конце месяца эти имена сортируются в соответстветствии со своими данными. Мне нужно собрать с помощью цикла (например For) все эти имена (их всего 4) просуммировать все данные по ним (сколько за месяц смен, умножить колличество смен на некий коэффициент и получить зарплату каждого сотрудника итд). Удобно было бы, если бы я в цикле сделал так: "Lohn" & ImyaX и эта комбинация была бы равна переменной LohnImyaX, объявленной, как Single. Просто если имен 4 - все легко, а если имен / сотрудников будет 20, то писать для каждого сотрудника свой фрагмент программы - немного перебор. Хотелось бы создать один универсальных кусок программы для всех имен

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Помогите, похалуйста, с созданием переменной...

Сообщение ger_kar » 10.11.2013 (Вс) 18:44

Ну вообще все вверх ногами.
Если нужно сделать расчет зарплаты на 1... n количество человек, то самое оптимальное сделать класс с полями-свойствами в которые заносится необходимая информация для конкретного субъекта и коллекцию для хранения объектов-экземпляров этого класса. Для расчетов достаточно будет обойти коллекцию и все. Хоть 1 человек, хоть тысяча разницы нет. На крайний случай можно вместо класса использовать структуру и массив, но это уже будет гораздо хуже.
Бороться и искать, найти и перепрятать


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot и гости: 46

    TopList