У меня есть следующий код. Это для моей оценочной ведомости. У меня есть обычные формулы, а также пользовательские формулы, которые я создаю для каждой вакансии. Когда я сохраняю данные в файл с расширением .mrt, все данные, включая формулы, пишутся без проблем. Однако, когда я открываю текстовый файл для считывания данных обратно на свой оценочный лист, все считывается из текстового файла и помещается на мой оценочный лист нормально, но появляется ошибка времени выполнения. Если я ограничу значение i 48 вместо 79 в подпрограмме OpenFile, я не получу сообщение об ошибке. Очевидно, что сообщение об ошибке связано с количеством ячеек, в которые я пытаюсь ввести данные. Вот еще одна интересная вещь; если я достану.Формула в подпрограмме SaveFile, нет ошибок при чтении данных из текстового файла на мой лист Excel. Ребята, не могли бы вы помочь мне с этой проблемой?

Private Sub CommandButton6_Click() 'OPEN button
    OpenFile
End Sub

Private Sub CommandButton7_Click() 'SAVE button
    SaveFile
End Sub

Sub OpenFile()
    Dim FileName As Variant

    FileName = Application.GetOpenFilename(",*.mrt")

    If TypeName(FileName) = "Boolean" Then Exit Sub
    Open FileName For Input As #2
    For i = 1 To 79 'est sheet
        For j = 1 To 49
            Input #2, data
            Sheet1.Cells(i, j) = data
        Next j
    Next i
    Close #2
End Sub

Sub SaveFile()
    Dim FileName As Variant

    FileName = Application.GetSaveAsFilename("*.mrt", ",*.mrt")

    If TypeName(FileName) = "Boolean" Then Exit Sub
    Open FileName For Output As #1
    For i = 1 To 79
        For j = 1 To 49
            data = Sheet1.Cells(i, j).Formula
            Write #1, data
        Next j
    Next i
    Close #1
End Sub

0