O formato das datas está incorreto ao usar uma macro VBA para converter um arquivo de texto CSV em Excel 2003

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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 911750
importante Este artigo contém informações sobre como modificar o registro. Certifique-se de fazer backup do registro antes de modificá-lo. Certifique-se que você sabe como restaurar o registro se ocorrer um problema. Para obter mais informações sobre como fazer backup, restaurar e modificar o registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
256986Descrição do registro do Microsoft Windows

Sintomas
Você usar um Microsoft macro do Visual Basic for Applications (VBA) para converter um arquivo de texto (CSV) de valores separados por vírgula para uma pasta de trabalho do Microsoft Office Excel 2003 (*.xls). No entanto, o formato das datas são convertidos em sua pasta de trabalho Excel 2003 está incorreto.

Por exemplo, no arquivo CSV, as datas podem estar no formato dd/mm/aaaa . As datas podem ser convertidas para o formato mm/dd/aaaa quando você executa a macro a seguir para converter o arquivo CSV em uma pasta de trabalho do Excel:
Sub test()   Workbooks.OpenText Filename:="C:\Test1.csv", DataType:=xlDelimited, _      TextQualifier:=xlTextQualifierNone, FieldInfo:=Array(1, 4)	End Sub
Resolução
Esse problema foi corrigido primeiramente em um hotfix que agora está contido em um service pack. Se você instalou o Office 2003 service pack mais recente, não é necessário instalar o hotfix.

Informações sobre o service pack

Esse problema é corrigido no Office 2003 Service Pack 3. Para resolver esse problema, obtenha o service pack mais recente para o Office 2003. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
870924Como obter o service pack mais recente para o Office 2003

Depois de instalar o service pack, execute as etapas listadas na seção "Como habilitar o hotfix" para definir a chave de registro
VBAAlwaysLoadUS
e ativar o hotfix.

Informações sobre o hotfix

Como obter o hotfix

Esse problema é corrigido no Excel 2003 post-Service Pack 2 pacote de Hotfix com a data 8 de dezembro de 2005. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
911019Descrição do Excel 2003 Service Pack 2 hotfix: 8 de dezembro de 2005

Como habilitar o hotfix

Aviso Podem ocorrer sérios problemas se você modificar o registro incorretamente usando o Editor do registro ou usando outro método. Esses problemas podem exigir que você reinstale seu sistema operacional. A Microsoft não garante que esses problemas possam ser solucionados. Modificar o registro por sua própria conta e risco.

Para habilitar esse hotfix, siga estas etapas:
  1. Feche o Excel 2003.
  2. Clique em Iniciar , clique em Executar , digite regedit na caixa Abrir e, em seguida, clique em OK .
  3. Localize e, em seguida, clique para selecionar a seguinte chave do Registro:
    HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Options
  4. Depois de selecionar a chave que é especificada na etapa 3, aponte para novo no menu Editar e, em seguida, clique em Valor DWORD .
  5. Digite VBAAlwaysLoadUS e, em seguida, pressione ENTER.
  6. Clique com o botão direito do mouse VBAAlwaysLoadUS e, em seguida, clique em Modificar .
  7. Na caixa dados do valor , digite 1 e, em seguida, clique em OK .
  8. No menu arquivo , clique em Sair para fechar o Editor do Registro.
Como Contornar
Microsoft fornece exemplos de programação apenas para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não está limitado a, garantias implícitas de comercialização ou adequação para uma finalidade específica. Este artigo presume que você está familiarizados com a linguagem de programação que está sendo demonstrada e com as ferramentas que são usadas para criar e depurar procedimentos. Engenheiros de suporte podem ajudar a explicar a funcionalidade de um determinado procedimento, mas eles não modificarão esses exemplos para fornecer funcionalidades adicionais ou construir procedimentos para atender às suas necessidades. Para contornar este problema, adicione o <Local:=True> parâmetro para sua macro de VBA como no exemplo a seguir:
Sub test()	   Workbooks.OpenText Filename:="C:\Test1.csv", DataType:=xlDelimited, _      TextQualifier:=xlTextQualifierNone, FieldInfo:=Array(1, 4), Local:=True	End Sub
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Esse problema foi corrigido primeiro no Office 2003 Service Pack 3.
excel2003 excel2k3 xl2003 xl2k3

Aviso: este artigo foi traduzido automaticamente

Proprietăți

ID articol: 911750 - Ultima examinare: 10/15/2007 22:59:49 - Revizie: 2.4

Microsoft Office Excel 2003

  • kbmt kbregistry kboffice2003sp3fix kbvba kbprogramming kbautomation kbexpertiseinter kbqfe kbbug kbfix kbpubtypekc KB911750 KbMtpt
Feedback