Impede que o Excel converta texto em colunas

1

Quando estou usando o Excel para analisar vários documentos e preciso controlar a importação (Texto, não Geral, nas configurações de importação de coluna sendo o exemplo mais notável), como posso evitar que o Excel execute automaticamente o texto para Assistente de importação -coluna para mim automaticamente. Eu prefiro executá-lo manualmente toda vez, mesmo que eu perceba que o Excel está apenas tentando ser útil fazendo o que eu acabei de fazer.

Ele simplesmente não converte as colunas para Texto primeiro.

    
por jcolebrand 23.04.2013 / 19:09

2 respostas

0

Você pode alterar o layout ou as propriedades dos dados importados a qualquer momento. No menu dados, aponte para obter dados externos e, em seguida, clique em Editar importação de texto ou propriedades de intervalo de dados.

Se você selecionar Editar importação de texto, selecione o arquivo que você importou originalmente e faça alterações nos dados externos no Assistente de importação de texto.

Ao selecionar Propriedades do intervalo de dados, você pode definir as opções de definição de consulta, controle de atualização e layout de dados para os dados externos.

    
por 24.04.2013 / 22:45
0

Se você estiver em uma versão do Excel que não contenha "Obter dados externos" no menu Dados (como o Excel 2003, que é minha versão principal devido às "atualizações" anti-produtivas do Office 2007 até 2013), você pode evitar o comportamento "útil" que eles forçam em você por algumas etapas manuais ou por uma macro (uma macro é mais rápida e mais fácil, então eu a coloco no meu personal.xls):

  • Adicione uma pasta de trabalho (ou Ctrl + N )
  • Digite a letra A na célula A1
  • Clique na célula A1
  • Inicie “Texto para Colunas” (ou Alt + D , E )
  • Escolha delimitado (ou Alt + D )
  • Pressione Enter
  • Desmarque todas as caixas de seleção
  • Clique em Concluir (ou Alt + F )
  • Feche a pasta de trabalho; não salve.

Agora, o comportamento "útil" será impedido quando você colar novamente.

no código

' Differs from Walkenbach in that he just populated A1 if empty, did this on A1, restored A1.
' This is better IFF you are allowed to add a workbook.
Sub FixAutomaticTextToColumns()
    If ActiveSheet.ProtectContents Then MsgBox _
            "BTW, the active sheet is protected. Consider unprotecting 'ere TextToColumns"
    Workbooks.Add
    Cells(1) = "A" 'Required, else TextToColumns will error
    Cells(1).TextToColumns DataType:=xlDelimited, Tab:=False, semicolon:=False, _
                           comma:=False, Space:=False, other:=False
    ActiveWorkbook.Close False
End Sub

FWIW, eu escrevi essa rotina de forma independente e, em seguida, descobri que Guru do Excel / autor / desenvolvedor John Walkenbach publicou algo semelhante em seu site, The Spreadsheet Page , intitulado Limpar o texto para os parâmetros das colunas .

Veja Como adiciono o VBA no MS Office? para obter informações gerais.

    
por 20.01.2018 / 15:42