XL2000: Macro código para verificar se um ficheiro já é aberto

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 213383
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Para obter uma versão do Microsoft Excel 2002 deste artigo, consulte 291295.
Para obter uma Microsoft Excel 98 e versão anterior deste artigo, consulte 138621.
Sumário
Quando utiliza um ficheiro que é partilhado através de uma rede, poderá frequentemente ser útil para saber se outro utilizador tem o ficheiro aberto. O seguinte Microsoft Visual Basic para aplicações procedimento é um exemplo de um método para determinar se outro utilizador tem um determinado ficheiro aberto.
Mais Informação
Microsoft fornece exemplos de programação ilustração só, sem garantia expressa ou implícita, incluindo, sem limitação, garantias implícitas de comercialização e/ou adequação a um fim específico. Este artigo pressupõe que está familiarizado com a linguagem de programação apresentada e as ferramentas utilizadas para criar e depurar procedimentos. Profissionais de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento, mas não modificarão estes exemplos para proporcionarem funcionalidades adicionais nem criarão procedimentos adaptados às necessidades específicas.
Se dispõe de limitada experiência de programação, poderá contactar um Microsoft Certified Partner ou a serviços de aviso. Para obter mais informações, visite estes Web sites da Microsoft:

Microsoft certificado Partner - https://partner.microsoft.com/global/30000104

Serviços Microsoft aviso - http://support.microsoft.com/gp/advisoryservice

Para obter mais informações sobre as opções de suporte estão disponíveis e sobre como contactar a Microsoft, visite o seguinte Web site da Microsoft: http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

Código de macro de exemplo

Se um determinado ficheiro ainda não estiver aberto, a seguinte macro também abre-lo. Se o ficheiro não estiver na localização especificada, receberá a seguinte mensagem de erro:
Não foi encontrado um ficheiro.
Para criar um procedimento do Visual Basic para ver se livro2.xls na unidade C já está aberto, siga estes passos:
  1. Iniciar o Microsoft Excel e, em seguida, prima ALT+F11 para abrir do Visual Basic for Applications.
  2. No Visual Basic, clique em módulo no menu Inserir .
  3. Escreva o seguinte código na folha do módulo:
    Sub TestFileOpened()    ' Test to see if the file is open.    If IsFileOpen("c:\Book2.xls") Then        ' Display a message stating the file in use.        MsgBox "File already in use!"        '        ' Add code here to handle case where file is open by another        ' user.        '    Else        ' Display a message stating the file is not in use.        MsgBox "File not in use!"        ' Open the file in Microsoft Excel.        Workbooks.Open "c:\Book2.xls"        '        ' Add code here to handle case where file is NOT open by another        ' user.        '    End IfEnd Sub' This function checks to see if a file is open or not. If the file is' already open, it returns True. If the file is not open, it returns' False. Otherwise, a run-time error occurs because there is' some other problem accessing the file.Function IsFileOpen(filename As String)    Dim filenum As Integer, errnum As Integer    On Error Resume Next   ' Turn error checking off.    filenum = FreeFile()   ' Get a free file number.    ' Attempt to open the file and lock it.    Open filename For Input Lock Read As #filenum    Close filenum          ' Close the file.    errnum = Err           ' Save the error number that occurred.    On Error GoTo 0        ' Turn error checking back on.    ' Check to see which error occurred.    Select Case errnum        ' No error occurred.        ' File is NOT already open by another user.        Case 0         IsFileOpen = False        ' Error number for "Permission Denied."        ' File is already opened by another user.        Case 70            IsFileOpen = True        ' Another error occurred.        Case Else            Error errnum    End SelectEnd Function					
Referências
Para mais informações sobre como utilizar o código de exemplo neste artigo, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft:
212536OFF2000: Como executar códigos de exemplo a partir de artigos da base de dados de conhecimento da Microsoft
XL2000

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 213383 - Última Revisão: 12/05/2015 12:11:51 - Revisão: 3.5

Microsoft Excel 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbdtacode kbhowto kbinfo kbprogramming KB213383 KbMtpt
Comentários