Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/2: Рейтинг темы: голосов - 2, средняя оценка - 5.00
_Doro_Wierer_
2 / 2 / 0
Регистрация: 18.01.2018
Сообщений: 58
1

Создание программы с использованием имен

10.02.2018, 11:38. Просмотров 490. Ответов 10
Метки нет (Все метки)

Создать программу определения номеров групп с наибольшим значением качественной успеваемости за прошлый и текущий период для этих номеров групп использовать ИМЕНА.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub Opredelenie()
Sheets("Лист2").Select
x = Application.Max([C2:C6])
If Range("C2") = x Then
y = Range("B2")
End If
If Range("C3") = x Then
y = Range("B3")
End If
If Range("C4") = x Then
y = Range("B4")
End If
If Range("C5") = x Then
y = Range("B5")
End If
If Range("C6") = x Then
y = Range("B6")
End If
MsgBox "Максимальная качественная успеваемость:" & "   " & x & "  " & "В группе:" & "   " & y
End Sub
Вложение 909747

Добавлено через 1 час 5 минут
И как, сделать Программно)с помощью кода) так чтобы в Ексэле я ввёл данные по качественной успеваемости. И Ексель их сохранил. Я закрыл ексель. Когда снова открываю я ввожу новые данные в таблицу, но чтобы при запуске кода программы он мне выводил и старые и новые введённые данные. Как такую замудрёную задачку можно сделать. Преподаватель сказал с использованием имен.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2018, 11:38
Ответы с готовыми решениями:

Создание выпадающего списка в VBA Excel с использованием диспетчера имен
Добрый день. Возникла проблема. Подготовил данные на отдельном листе, через диспетчер имен задал...

Создание программы с использованием файлов
Информация об участниках спортивных соревнований содержит наименование страны, название команды,...

Создание программы с использованием TStringGrid
Помогите пожалуйста сделать вот такую программу в Делфи с использованием TStringGrid. В таблице...

Создание программы с использованием командной строки
Короче нужна помож хочу на бейсике сделать так чтоб была кнопочка нажимаеш и там вылетает командная...

10
Burk
1101 / 773 / 235
Регистрация: 11.07.2014
Сообщений: 2,724
10.02.2018, 11:46 2
_Doro_Wierer_, если число групп будет больше, то можно малость покороче

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Sub Opredelenie()
Dim I As Integer, J As Integer, X As Double
Sheets("Лист2").Select
X = 0: J = 0
For I = 2 To 6
  If X < Cells(I, 3) Then
    J = I: X = Cells(I, 3)
  End If
Next
MsgBox "Максимальная качественная успеваемость=" & Cells(J, 3) & " в группе: " & Cells(J, 2)
End Sub
1
_Doro_Wierer_
2 / 2 / 0
Регистрация: 18.01.2018
Сообщений: 58
10.02.2018, 11:55  [ТС] 3
Цитата Сообщение от Burk Посмотреть сообщение
если число групп будет больше, то можно малость покороче
Извените конечно? а это с помощью имен?

И как, сделать Программно)с помощью кода) так чтобы в Ексэле я ввёл данные по качественной успеваемости. И Ексель их сохранил. Я закрыл ексель. Когда снова открываю я ввожу новые данные в таблицу, но чтобы при запуске кода программы он мне выводил и старые и новые введённые данные. Как такую замудрёную задачку можно сделать. Преподаватель сказал с использованием имен.
0
Burk
1101 / 773 / 235
Регистрация: 11.07.2014
Сообщений: 2,724
10.02.2018, 12:24 4
_Doro_Wierer_, замудрённого в этой задаче ничего нет, она очень проста.
Просто вводите в лист2 ваши значения и при сохранении файла сохранятся и старые и новые
только вместо цифры 6 в макросе надо поставить число заполненных строк (LastRow)
Надо ещё подумать, что делать, если качественная успеваемость в нескольких группах одинакова
Visual Basic
1
  LastRow = Cells(Rows.Count, 3).End(xlUp).Row
да и в вашем коде
Добавлено через 3 минуты
Цитата Сообщение от _Doro_Wierer_ Посмотреть сообщение
If Range("C2") = x Then
y = Range("B2")
End If
можно писать проще
Visual Basic
1
If Range("C2") = x Then y = Range("B2")
одна строчка вместо трёх

Добавлено через 2 минуты
_Doro_Wierer_, а вот что такое с помощью имён я не понял
0
_Doro_Wierer_
2 / 2 / 0
Регистрация: 18.01.2018
Сообщений: 58
16.02.2018, 10:31  [ТС] 5
Цитата Сообщение от Burk Посмотреть сообщение
LastRow = Cells(Rows.Count, 3).End(xlUp).Row
а чуть по полнее можно кодик пожалуйста не совсем понимаю((((
0
Burk
1101 / 773 / 235
Регистрация: 11.07.2014
Сообщений: 2,724
16.02.2018, 13:29 6
_Doro_Wierer_, ПОПОЛНЕЕ уж некуда. Это последняя заполненная строка в столбце 3. Rows.Count общее число строк в листе экселя, в разных версиях оно разное Двигаемся снизу от последней строки листа вверх до первого значения в ячейке столбца (xlUp) Up - вверх End - конец, последняя.
Почаще пользуйтесь поисковиком напр. можно набрать ВБА последняя заполненная строка или столбец
0
_Doro_Wierer_
2 / 2 / 0
Регистрация: 18.01.2018
Сообщений: 58
19.02.2018, 06:58  [ТС] 7
Цитата Сообщение от Burk Посмотреть сообщение
ПОПОЛНЕЕ уж некуда
Помогите пожалуйста код написать я уже неделю не могу его преподу сдать((((((((((((((( он имена какие то требует(((
0
Alex77755
11001 / 3455 / 594
Регистрация: 13.02.2009
Сообщений: 10,271
19.02.2018, 10:02 8
ну так присвой имена нужным диапазонам! и в программе используй имена
Вместо [C2:C6] Range("Имя")
0
_Doro_Wierer_
2 / 2 / 0
Регистрация: 18.01.2018
Сообщений: 58
19.02.2018, 10:19  [ТС] 9
Цитата Сообщение от Alex77755 Посмотреть сообщение
ну так присвой имена нужным диапазонам! и в программе используй имена
Вместо [C2:C6] Range("Имя")
А ПО КОД ПО ПОЛНЕЕ МОЖНО ??? Я НЕДЕЛЮ ПОНЯТЬ НЕ МОГУ
0
Burk
1101 / 773 / 235
Регистрация: 11.07.2014
Сообщений: 2,724
19.02.2018, 11:17 10
_Doro_Wierer_, небольшой совет - ходите на занятия и там спрашивайте у преподавателя о непонятных вам вещах. Посылаю вам файл с макросом, может имелось ввиду то, что я вам написал? Если нет, спросите про имена у студентов, которые ходили на лекции, или наберитесь мужества и узнайте у преподавателя, что он имеет ввиду
1
Вложения
Тип файла: rar Успеваемость.rar (13.9 Кб, 6 просмотров)
_Doro_Wierer_
2 / 2 / 0
Регистрация: 18.01.2018
Сообщений: 58
19.02.2018, 16:16  [ТС] 11
Цитата Сообщение от Burk Посмотреть сообщение
небольшой совет - ходите на занятия и там спрашивайте у преподавателя о непонятных вам вещах. Посылаю вам файл с макросом, может имелось ввиду то, что я вам написал? Если нет, спросите про имена у студентов, которые ходили на лекции, или наберитесь мужества и узнайте у преподавателя, что он имеет ввиду
Я посещаю все лекции, но спасибо огромное конечно за помощь посмотрю что можно сделать)))))))))))))))0
0
19.02.2018, 16:16
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2018, 16:16

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Создание программы с использованием радиокнопки и флажка
помогите пожалуйста. как создать радиокнопку и флажок. структура программы в вложенном файле

Создание программы с использованием операторов цикла с параметром
вычислить значения: \sin x+\sin ^{2}x^{2}+..+\sin ^{n}x^{n}

Создание программы на языке C++ с использованием геометрической прогрессии
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; int main() { int ak, q; int n; int i; ...

Создание программы с использованием операторов цикла с предусловием
Если в заданном целочисленном векторе A(N) есть элементы со значением, равным заданному числу B,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.