Ай
Айнура

Програмирование в basic

Option Explicit
Private Type ZAP
PN As Integer 'порядковый номер
NOMC As Integer ' строительная фирма
FAM As String 'название города
FROF As String 'объем выделенных средств на год
RAZ As Integer '1
ST As Integer '2
GR As Integer '3
ZP As Currency '4
End Type

Private Sub CommandButton1_Click()
'Блок описания данных
Dim N As Integer 'количество строк в таблице
Dim Mas() As ZAP 'массив записей -копия таблицы
Dim S As Range 'переменная типа диапазон
Dim ZP As String 'заданный город

Dim I As Integer 'цикловая переменная
Dim J As Integer 'цикловая переменная
Dim L As Integer 'номер строки вывода результата
Dim T As Integer 'порядковый номер маршрута

'определение размера базы данных

Set S = Range("База")
N = S.Rows.Count - 1 'с учетом заголовка таблицы из одной строки

'формирование массива - копии базы данных

ReDim Mas(1 To N) As ZAP 'переобъявление массива разных стран
For I = 1 To N 'цикл доступа к строкам таблицы
Mas(I).PN = I 'формирование поля в массиве (порядковый номер)
Mas(I).NOMC = Cells(I + 1, 2) ' формирование поля строительная фирма
Mas(I).FAM = Cells(I + 1, 3) ' формирование поля название города
Mas(I).PROF = Cells(I + 1, 4) 'формирование поля объем выделенных средств на год
Mas(I).RAZ = Cells(I + 1, 5) 'формирование поля 1
Mas(I).ST = Cells(I + 1, 6) 'формирование поля 2
Mas(I).GR = Cells(I + 1, 7) 'формирование поля 3
Mas(I).ZP = Cells(I + 1, 😎 'формирование поля 4
Next I

'По зданному городу сведения для тех фирм, в которых суммарный объем освоенных средств является минимальным
ZP = InputBox("Москва")
Min = 2000
For I = 1 To N
If ZP = Mas(I).FAM And Mas(I).RAZ < Min Then Min = (I)

End Sub

'Блок вывода результата на экран

L = 2 'заголовок вывода результата из одной строки
T = 0 'номер списка
For I = 1 To N
If ZP = Mas(I).FAM And Mas(I).RAZ = Min Then
L = L + 1
T = T + 1
Cells(L, 10) = T 'вывод номера списка в 10-й столбец
Cells(L, 11) = Mas(I).NOMC 'вывод в таблицу строительная фирма
Cells(L, 12) = Mas(I).FAM 'вывод в таблицу название города
Cells(L, 13) = Mas(I).PROF 'вывод объем выделенных средств на год
Cells(L, 14) = Mas(I).RAZ 'вывод 1
Cells(L, 15) = Mas(I).ST 'вывод 2
Cells(L, 16) = Mas(I).GR 'вывод 3
Cells(L, 17) = Mas(I).ZP 'вывод 4

End If
Next I

выдает ошибку на строке
Mas(I).PROF = Cells(I + 1, 4) '
выделяет .PROF

и пишет:
Complite error:
Method or data member not found

РС
Р Сабиров

у вас в начале FROF:

FROF As String 'объем выделенных средств на год

а вы его потом зовете PROF

ЛЛ
Лаврентий Лубягин

в описании нового типа есть поле
FROF As String 'объем выделенных средств на год
а вы обращаетесь как
PROF

Похожие вопросы
Помогите с програмированием.
Програмирование на Java
Задача на програмирование
задача по програмированию в Visual Basic
програмирование в QBASIC
Програмирование в Excel
програмирование на c++
Задача по програмированию
Excel програмирование
Хочу занять время у пк научится програмированию. С чего легче начать думаю с Small Basic для начала