|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.10.2017, 14:15 | #1 |
Пользователь
Регистрация: 01.03.2017
Сообщений: 31
|
Выделить в диапазоне все зависимые строки
Выделить в диапазоне все зависимые строки. Зависимыми считать строки, если одна строка получается в результате умножения другой строки на коэффициент.
Это надо реализовать все в модуле-классе. А в обычном модуле (основном) надо создать экземпляр объектов этого модуля-класса. В диапазоне могут быть не только числовые, но и текстовые данные. Так мне все это реализовать? Помогите мне пожалуйста. А то я уже который день не могу придумать оптимальный алгоритм для решения данной задачи. Алгоритм для основного (обычного) модуля я еще не разработала. Вот код макроса для класса-модуля (здесь еще должна быть две проверки условия на то — является ли данное записанное в ячейке — числом или нет, если нет — то обойти ячейку и вторая это проверка условия деления на 0, если число в ячейку делится на 0, обойти ячейку): Option Explicit Public Область As Range Dim i2 As Byte, j2 As Byte, k As Byte, коэфф As Double Sub Определитькоэффициент() For i2 = 1 To Область.Rows.Count — 1 For k = i2 + 1 To Область.Rows.Count коэфф = Область.Cells(i2, j2) / Область.Cells(k, j2) For j2 = 1 To Область.Columns.Count If (коэфф = Область.Rows(i2).Cells(j2)) And (коэфф = Область.Rows(k).Cells(j2)) Then ЦветЯчеек Range(Область.Cells(i2, j2), Область.Cells(i2, j2)) End If Next j2 Next k Next i2 End Sub Sub ЦветЯчеек(Цвет As Range) Цвет.Interior.ColorIndex = 43 End Sub Вот код макроса для главного модуля, где будут создаваться экземпляры класса-модуля: Option Explicit Sub ОбработатьДиапазон() Dim Диапазон As КлассДиапазон Set Диапазон = New КлассДиапазон Set Диапазон.Область = Worksheets(«Практическая №2»).Range(«D7:H12») Диапазон.Определитькоэффициент Set Диапазон = Nothing End Sub Скриншот 74444154c892e82ef025de4fe931123a.jpg Помогите мне срочно, я уже целый месяц не знаю как решить данную задачу. |
15.10.2017, 21:58 | #2 | |
Форумчанин
Регистрация: 14.02.2009
Сообщений: 753
|
Цитата:
Копируй код в модуль, модуль класса... Начинай делать! эти строчки поменяй местами Код:
А со скриншотами не сюда! Это на форум по фотошопу!
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
вывести на экран все числа, делящиеся на 3 в диапазоне | vova_makr | Помощь студентам | 4 | 28.09.2015 16:35 |
Как выделить сразу все строки? | deserving83 | Microsoft Office Excel | 4 | 12.07.2013 05:57 |
Найти все простые числа в заданном диапазоне | Nikita++ | Помощь студентам | 8 | 20.10.2010 20:05 |
выделить все строки цветом по заданому условию | mars56 | Microsoft Office Excel | 2 | 15.02.2010 07:55 |
Выделить все | Михаил Юрьевич | Общие вопросы Delphi | 1 | 21.02.2008 23:12 |