Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.12.2010, 09:16   #1
funduk
Пользователь
 
Регистрация: 23.12.2010
Сообщений: 22
Восклицание VBA(кнопки,массивы)

Исходные данные: расход каждого из К материалов на производство каждой из М деталей. Исходные
данные определяются путем обращения к датчику случайных чисел. Задание:
а. Для любого материала определить деталь с наибольшим расходом.
б. Для любой детали определить суммарное значение расхода всех материалов.

мои макросы получились
Sub Задание_а()
Dim k, m, i, j As Integer
m = Val(Cells(1, 1).Value)
k = Val(Cells(2, 1).Value)
MsgBox (Str(m) + " деталей" + "," + Str(k) + " видов материалов")
If k > 0 And k <= 10 And m > 0 And m <= 10 Then
For i = 1 To m Step 1
For j = 1 To k Step 1
Cells(2 + i, j).Value = Str(Int(100 * Rnd()))
Next
Next
Else
MsgBox ("Создать таблицу невозможно с заданными параметрами" + Str(m) + "," + Str(k))
For i = 1 To 10 Step 1
For j = 1 To 10 Step 1
Cells(2 + i, j).Value = ""
Next
Next
End If
For i = m + 1 To 10 Step 1
For j = 1 To 10 Step 1
Cells(2 + i, j).Value = ""
Next
Next
For j = k + 1 To 10 Step 1
For i = 1 To 10 Step 1
Cells(1 + i, j).Value = ""
Next
Next
End Sub


Sub Задание_б()
Dim k, k1, m, m1, j, i As Integer
Dim sum, max As Integer
m = Val(Cells(1, 1).Value)
k = Val(Cells(2, 1).Value)

If m > 0 And m <= 10 And k > 1 And k <= 10 Then
If k1 > 0 And k1 <= k And m1 > 0 And m1 <= m Then
max = Val(Cells(2 + m1, j).Value)
det = 1
For j = 1 To k Step 1
If max < Val(Cells(2 + m1, j).Value) Then
max = Val(Cells(2 + m1, j).Value)
det = j
Cells(9, 1) = "Деталь с наибольшим расходом для " + Str(m1) + " материала равно" + Str(max)
End If
Next
Cells(7, 11).Value = "Деталь с наибольшим расходом для " + Str(m1) + " материала равно" + Str(max)
sum = 0
For i = 1 To m Step 1
sum = sum + Val(Cells(2 + i, k1).Value)
Next
Cells(6, 11).Value = "суммарное значение расхода всех материалов для " + Str(m1) + " детали равно " + Str(sum)

End If
Else
MsgBox ("невозможно обработать таблицу с данными параметрами")
End If


End Sub
Помогите задание Б исправить.Вообще ничего не происходит(не выводит значения)
и кнопку нормально не могу сделать...
funduk вне форума Ответить с цитированием
Старый 27.12.2010, 09:25   #2
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
Помогите задание Б исправить.Вообще ничего не происходит(не выводит значения)
А где у вас вот это присваивается(задается)?
If k1 > 0 And k1 <= k And m1 > 0 And m1 <= m Then
k1 и m1 ?
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 27.12.2010, 09:39   #3
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,079
По умолчанию

m = Val(Cells(1, 1).Value)
k = Val(Cells(2, 1).Value)

занесите значения в а1 и в1
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Старый 27.12.2010, 09:46   #4
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

shanemac51
Цитата:
m = Val(Cells(1, 1).Value)
k = Val(Cells(2, 1).Value)
занесите значения в а1 и в1
Если Вы это мне, то вопрос был не о k и m, это и так понятно
а о k1 m1
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 27.12.2010, 09:50   #5
funduk
Пользователь
 
Регистрация: 23.12.2010
Сообщений: 22
По умолчанию

m и k по условию в $A$1 и $A$2
А m1 и k1 - уже не думается.Спс,что сказал я на это даже не смотрел=).
funduk вне форума Ответить с цитированием
Старый 27.12.2010, 09:54   #6
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

удалено, ошибка
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499

Последний раз редактировалось VictorM; 27.12.2010 в 10:09.
VictorM вне форума Ответить с цитированием
Старый 27.12.2010, 10:00   #7
funduk
Пользователь
 
Регистрация: 23.12.2010
Сообщений: 22
По умолчанию

R1C1 разве не строка столбец?
Ну и задание_а я же запускаю макрос с данными в 1,1 и 2,1.
funduk вне форума Ответить с цитированием
Старый 27.12.2010, 10:10   #8
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Вы правы, что-то я протупил))
Сбило с толку сообщение shanemac51
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 27.12.2010, 11:25   #9
funduk
Пользователь
 
Регистрация: 23.12.2010
Сообщений: 22
По умолчанию

ничего у меня не получается=(
funduk вне форума Ответить с цитированием
Старый 27.12.2010, 11:45   #10
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
ничего у меня не получается=(
Выкладывайте файл, говорите, что нужно и что не получается
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Текст и цвет текста кнопки VBA segail Microsoft Office Excel 17 27.11.2020 09:27
VBA, двумерные массивы Desha Помощь студентам 0 04.06.2010 18:08
VBA, массивы ksenechka Помощь студентам 6 24.05.2010 16:47
массивы в VBA ALYSA Помощь студентам 0 19.04.2010 18:49
VBA массивы jerniko Помощь студентам 4 26.01.2010 19:46