lapulechka
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Народ! У меня тут такая заморочка Обработка файлов данных. Исходные данные о предприятиях: код, название, год начала реконструкции (не ранее 1995г., число лет реконструкции не более пяти), год окончания реконструкции (не позже 2005 г.), планируемые затраты на каждый год реконструкции. Число предприятий не определено. Записать данные в файл. Используя данные в файле, найти общие планируемые затраты на реконструкцию за заданный год. «найти общие планируемые затраты на реконструкцию за заданный год.» - вот что меня напрягает. Мне надо, чтобы это действовало так: Командная кнопка решить 1) через Text1 вводится год (от 1995 до 2005) 2) Командная кнопка «решить» 3) выдаётся таблица MSFlexGird, где появляются: шапки колонок – года (1995 до 2005), содержание колонок – планируемые затраты за данный год по всем предприятиям. 4) В Text2 появляются общие планируемые затраты на реконструкцию за заданный год. Вот, что у меня уже есть: Private Type prod kod As String * 3 name As String * 10 nachalo As String * 4 konec As String * 4 pl(1 To 5) As Single End Type Private pr As predp, x As predp, y As predp Private kolzap%, n_rec%, b As Boolean Private Sub Vvod_Click() Text1.Visible = False Open CurDir$ & "\predpr.dat" For Random As #1 Len = Len(pr) Do pr.kod = InputBox("Введите код предприятия") pr.name = InputBox("Введите название предприятия") pr.nachalo = InputBox("Введите год начала реконструкции (не ранее 1995г., число лет реконструкции не более пяти)") pr.konec = InputBox("Введите год окончания реконструкции (не позже 2005 г.)") For i = 1 To 5 pr.pl(i) = InputBox("Введите планируемые затраты на каждый год реконструкции " & i & " год") Next i Put #1, , pr Loop Until MsgBox("Продолжить ввод данных ?", 36) = vbNo Close #1 End Sub Private Sub prosmotr_Click() Dim i%, j% Text1.Visible = False Open CurDir$ & "\predpr.dat" For Random As #1 Len = Len(pr) kolzap = LOF(1) \ Len(pr) fg.Cols = 13: fg.Rows = 16 For i = 0 To 12 fg.ColWidth(i) = fg.Width / 13 Next i fg.Clear fg.FormatString = "^ № р/р |^ Код |< Наименование |^ PL1 |^ PL2 |^ PL3 " & _ "|^ PL4 |^ PL5 |^ Начало реконструкции |^ Конец реконструкции " For i = 1 To kolzap Get #1, , pr fg.TextMatrix(i, 0) = i fg.TextMatrix(i, 1) = pr.kod fg.TextMatrix(i, 2) = pr.name For j = 1 To 5 fg.TextMatrix(i, j + 2) = pr.pl(j) fg.TextMatrix(i, j + 5) = pr.nachalo fg.TextMatrix(i, j + 7) = pr.konec Next j Next i Close #1 End Sub |