Conteúdo

# FreeFile Function

Devolve o próximo número de ficheiro disponível para abrir um ficheiro. Utilize esta função para abrir um ficheiro através de um número de ficheiro que ainda não esteja em uso por um ficheiro já aberto.

### Sintaxe:

    FreeFile

### Valor de retorno:

Número inteiro

### Parâmetros:

Esta função só pode ser utilizada imediatamente perante a instrução Open. FreeFile devolve o próximo número de ficheiro disponível, mas não o reserva.

### Códigos de erro

5 Chamada de procedimento inválido

67 Demasiados ficheiros

### Exemplo:

      Sub ExampleWorkWithAFile
          Dim iNumber As Integer
          Dim sLine As String
          Dim aFile As String
          Dim sMsg As String
          aFile = "C:\Users\ThisUser\data.txt"
          iNumber = Freefile
          Open aFile For Output As #iNumber
          Print #iNumber, "Esta é uma linha do texto"
          Print #iNumber, "Esta é outra linha de texto"
          Close #iNumber
          iNumber = Freefile
          Open aFile For Input As iNumber
          While Not eof(iNumber)
              Line Input #iNumber, sLine
              If sLine <>"" Then
                  sMsg = sMsg & sLine & chr(13)
              End If
          Wend
          Close #iNumber
          MsgBox sMsg
      End Sub

      Sub ExampleWorkWithAFile
          Dim iNumber As Integer
          Dim sLine As String
          Dim aFile As String
          Dim sMsg As String
          aFile = "~/data.txt"
          iNumber = Freefile
          Open aFile For Output As #iNumber
          Print #iNumber, "This is a line of text"
          Print #iNumber, "This is another line of text"
          Close #iNumber
          iNumber = Freefile
          Open aFile For Input As iNumber
          While Not eof(iNumber)
              Line Input #iNumber, sLine
              If sLine <>"" Then
                  sMsg = sMsg & sLine & chr(13)
              End If
          Wend
          Close #iNumber
          MsgBox sMsg
      End Sub

Tópicos relacionados

Close Statement

Open Statement

Print# Statement