Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / vba в word. нахождение произведения чисел из массива, которые < В / 18 сообщений из 18, страница 1 из 1
03.05.2012, 12:40
    #37780262
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
я работал в паскале, в бейсике, но в vba никогда. меня попросили помочь, но я не в силах. вот задача:
найти произведение элементов массива А, которые меньше числа В. вывести на печать заданный массив и полученное произведение. я что-то примерное собрал, но получается ошибка 424. исправьте, пожалуйста мое или пришлите свое.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Option Base 1
Private Sub cmb_click()
Dim a As Variant
Dim stra As String
Dim i, n As Integer
Dim p As Integer
Dim b As Integer
a = Array(-1, 4, -8, -5, 13, -18, 20, 0)
n = UBound(a)
p = 0
b = Val(txtB.Value)
For i = 1 To n
If a(i) < b Then p = p * a(i)
Next i
Txtp.Value = p
End Sub

Модератор: учимся использовать тэги оформления кода
...
Рейтинг: 0 / 0
03.05.2012, 13:06
    #37780347
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
- а что такое txtB, Txtp
- у ошибки тескт имеется?
- в какой строке она возникает? (у меня не возникла)
...
Рейтинг: 0 / 0
03.05.2012, 13:11
    #37780364
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
Shocker.Pro- а что такое txtB, Txtp
- у ошибки тескт имеется?
- в какой строке она возникает? (у меня не возникла)
1) как я понял из методички, это вывод на экран. к примеру, им нужно вывести min значение они и пишут txtmin.value = min
...
Рейтинг: 0 / 0
03.05.2012, 13:12
    #37780367
jhonkuk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
Может так:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Private Sub cmb_click()
Dim a As Variant
Dim stra As String
Dim i, n As Integer
Dim p As Integer
Dim b As Integer
a = Array(-1, 4, -8, -5, 13, -18, 20, 0)
n = UBound(a)
p = 1
b = Val(txtB.Text)
For i = 1 To n
If a(i) < b Then p = p * a(i)
Next i
Txtp.Text = p
End Sub
...
Рейтинг: 0 / 0
03.05.2012, 13:13
    #37780368
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
ошибка: Run-time error '424': Object required. строку не выделяет. я почему-то скрин не могу выложить
...
Рейтинг: 0 / 0
03.05.2012, 13:14
    #37780372
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
jhonkukМожет так:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Private Sub cmb_click()
Dim a As Variant
Dim stra As String
Dim i, n As Integer
Dim p As Integer
Dim b As Integer
a = Array(-1, 4, -8, -5, 13, -18, 20, 0)
n = UBound(a)
p = 1
b = Val(txtB.Text)
For i = 1 To n
If a(i) < b Then p = p * a(i)
Next i
Txtp.Text = p
End Sub


снова эта ошибка.. она всё время появляется..
...
Рейтинг: 0 / 0
03.05.2012, 13:18
    #37780382
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
ТыртырыЧкак я понял из методички, это вывод на экран. к примеру, им нужно вывести min значение они и пишут txtmin.value = minТак в методичке наверное пишут, что надо создать текстовые поля с такими именами?
...
Рейтинг: 0 / 0
03.05.2012, 13:20
    #37780385
jhonkuk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
Странно, в VB text, в аксе Value. и там и там работает
...
Рейтинг: 0 / 0
03.05.2012, 13:22
    #37780388
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
jhonkukСтранно, в VB text, в аксе Value. и там и там работает
ну я в ворде 2007 alt+F11 нажимаю, пишу текст, нажимаю F5 и эта ошибка
...
Рейтинг: 0 / 0
03.05.2012, 13:25
    #37780392
jhonkuk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
может вы действительно пытаетесь выполнить код без элементов. должно быть два тектовых поля (txtB, Txtp) и одна кнопка (cmb)
...
Рейтинг: 0 / 0
03.05.2012, 13:27
    #37780396
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
Shocker.Pro,
не знаю... там в методе просто решенная задача и задача тебею вот я по аналогии деллал. там написано:
присвоение результата переменной y
TxtY.value=y
...
Рейтинг: 0 / 0
03.05.2012, 13:29
    #37780398
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
jhonkuk,
мм.. возможно и так. Не подскажешь, как их тогда сделать?
...
Рейтинг: 0 / 0
03.05.2012, 13:42
    #37780418
jhonkuk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
...
Рейтинг: 0 / 0
03.05.2012, 13:47
    #37780425
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
jhonkuk,

спасибо, ща почитаю
...
Рейтинг: 0 / 0
03.05.2012, 13:48
    #37780426
jhonkuk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
и не забудьте обозвать элементы так как у вас в коде ;-)
...
Рейтинг: 0 / 0
03.05.2012, 13:54
    #37780440
ТыртырыЧ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
jhonkuk,

ага, спасибо :)
...
Рейтинг: 0 / 0
03.05.2012, 14:50
    #37780581
TpaBka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
ТыртырыЧ,
Вообще можно и без элементов управления

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Dim a As Variant
Dim stra As String
Dim i, n As Integer
Dim p As Integer
Dim b As Integer
a = Array(-1, 4, -8, -5, 13, -18, 20, 0)
n = UBound(a)
p = 1
b = Val(InputBox("Введите число B:", , 0))

For i = 0 To n
    If a(i) < b Then p = p * a(i)
Next i
MsgBox p


индекс 1-го элемента массива по умолчанию = 0
...
Рейтинг: 0 / 0
03.05.2012, 15:08
    #37780613
QValD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vba в word. нахождение произведения чисел из массива, которые < В
ТыртырыЧя работал в паскале, в бейсике, но в vba никогда.
Этот код и для vb6 и для vb.net подойдет
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / vba в word. нахождение произведения чисел из массива, которые < В / 18 сообщений из 18, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]