|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Объекты в VBA (Excel) |
|
VBA - Объекты в VBA (Excel)
|
Новый участник Сообщения: 24 |
Профиль | Отправить PM | Цитировать Разработать подпрограмму нахождения в выделенном диапазоне рабочей таблицы максимального и минимального значения по строкам и по столбцам. Элементы массива задать самостоятельно через функцию Inputbox.
Ввод элементов массива получился, но как найти остальное.... Public Sub r() Dim stl As Integer Dim str As Integer Dim i As Integer Dim j As Integer stl = InputBox("Введите количество столбцов") str = InputBox("Введите количество строк") For i = 1 To stl For j = 1 To str Sheets("Лист1").Cells(i, j) = InputBox("Введите" & j & "элемент" & i & "строки") Next j Next i End Sub |
|
Отправлено: 19:48, 21-02-2011 |
Старожил Сообщения: 369
|
Профиль | Отправить PM | Цитировать Условие непонятное
Цитата:
Цитата:
Если таблицу заполняешь сам значит заранее уже знаешь какое значение будет минимальным а какое максимальным |
||
Отправлено: 21:11, 21-02-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 24
|
Профиль | Отправить PM | Цитировать Цитата:
Далее, к примеру, из введённого массива 4х4 выделяется следующий диапазон: 1 2 3 4 5 6 7 8 2 6 9 4 0 3 5 1 И из этого находится минимальное и максимальное значение. |
|
Отправлено: 22:25, 21-02-2011 | #3 |
Пользователь Сообщения: 120
|
Цитата zena:
Цитата zena:
как в первом посте написано (мин и макс для каждой строки и каждого столбца)? или как в третьем посте (мин и макс среди всех значений входящих в выделенный диапазон)? если как в третьем тогда вот так (стоит учесть что макс и мин значения считаются только первые из найденных - если несколько одинаковых значений): |
||
Последний раз редактировалось KnRSU, 22-02-2011 в 11:39. Отправлено: 11:08, 22-02-2011 | #4 |
Новый участник Сообщения: 24
|
Профиль | Отправить PM | Цитировать Немного не то...
1) Нужно с клавиатуры ввести элементы массива, задав количество строк и столбцов. 2) Далее, например, из введённого массива выделяем смостоятельно произвольный диапазон и для данного примера в соответствующие ячейки выводится ответ: 2 3 4 -5 мах 4 min 2 8 1 -5 -8 мах 10 min -5 0 5 4 7 мах 5 min 0 мах 8 мах 10 мах 4min 0 min1 min-5 |
|
Последний раз редактировалось zena, 23-02-2011 в 19:29. Отправлено: 15:35, 23-02-2011 | #5 |
Новый участник Сообщения: 24
|
Профиль | Отправить PM | Цитировать как можно разбить код, чтобы выделение диапазона ячеек происходило после ввода массива?
Sub m_1() Dim myArray As Variant Dim i As Long Dim j As Long Dim Max As Variant Dim Min As Variant Dim stl As Integer Dim str As Integer stl = InputBox("Введите количество столбцов") str = InputBox("Введите количество строк") For i = 1 To stl For j = 1 To str Sheets("Лист1").Cells(i, j) = InputBox("Введите" & j & "элемент" & i & "строки") Next j Next i myArray = Selection For i = 1 To UBound(myArray, 1) Max = myArray(i, 1) Min = myArray(i, 1) For j = 1 To UBound(myArray, 2) If myArray(i, j) > Max Then Max = myArray(i, j) ElseIf myArray(i, j) < Min Then Min = myArray(i, j) End If Next j Cells(i, 10).Value = "max" & " " & Max & " " & "min" & " " & Min Next i End Sub |
Отправлено: 23:06, 23-02-2011 | #6 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать zena, пару вопросов. В VBA не силен, поэтому спрашиваю.
Что это за строка? myArray = Selection MyArray определен как Variant. А что такое Selection? Если тут ошибки нет, то идем дальше. Что такое Ubound ? "For j = 1 To UBound(myArray, 2)" Пока смутное и неясное подозрение на логику работы цикла поиска. Вроде все правильно, но что-то смущает. |
------- Отправлено: 23:49, 23-02-2011 | #7 |
Пользователь Сообщения: 120
|
lxa85, +1
Цитата zena:
Цитата lxa85:
Цитата lxa85:
|
|||
Отправлено: 15:14, 24-02-2011 | #8 |
Новый участник Сообщения: 1
|
Профиль | Сайт | Отправить PM | Цитировать Подскажите пожалуйста как в Exel ввести функцию Xmin<=X<=Xmax
|
Отправлено: 16:59, 18-02-2012 | #9 |
Разный Сообщения: 1294
|
Профиль | Отправить PM | Цитировать |
Отправлено: 20:36, 18-02-2012 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBA - VBA Excel помогите решить | Мария74 | Программирование и базы данных | 1 | 19-02-2011 12:58 | |
Разное - Задача Excel VBA | JON4 | Microsoft Office (Word, Excel, Outlook и т.д.) | 8 | 12-12-2010 18:40 | |
2010 - НЕпечатаемые объекты [Word / Excel] | shadowbat | Microsoft Office (Word, Excel, Outlook и т.д.) | 2 | 06-07-2010 08:37 | |
VBA - VBA excel метод Холецкого | romcd73 | Программирование и базы данных | 2 | 19-06-2009 10:03 | |
VBA - VBA | Отправить почту из Excel | rewerty | Программирование и базы данных | 4 | 25-04-2006 14:21 |
|