Caro usuário de tudo Excel, hoje eu tenho uma dica interessante, que é mapear elementos XML para células em um mapa XML. Isso mesmo, você pode inserir um mapa de dados em XML e fazer o mapeamento dos elementos.
Índice
Como importar e mapear elementos XML
Importar e Exportar dados XML no Excel, um mapa XML que associa elementos XML com dados nas células para obter os resultados desejados será útil. Para criar uma, você precisa ter um arquivo de esquema XML . xsd e um arquivo de dados XML . xml. Depois de criar o mapa XML, é possível mapear elementos XML da maneira desejada.
- Localizar ou criar esquema XML e arquivos de dados XML.
- Usar o esquema XML de amostra e arquivos de dados XML.
- Criar um mapa XML.
- Mapear elementos XML.
- Localizar ou criar esquema XML e arquivos de dados XML.
Se outro banco de dados ou aplicativo criado um esquema XML ou arquivo de dados XML, você já pode disponibilizá-los. Por exemplo, você pode ter um aplicativo de linha de negócios que exporta dados para esses formatos de arquivo XML, um site comercial ou serviço da web que fornece a esses arquivos XML, ou um aplicativo personalizado desenvolvido por seu departamento de TI que cria automaticamente esses arquivos XML.
Se você não tiver os arquivos XML necessários, você pode criá-los salvando os dados que você deseja usar como um arquivo de texto. Em seguida, você pode usar o Access e o Excel converter esse arquivo de texto para os arquivos XML que necessários. Veja como:
Access
- Importe o arquivo de texto que você deseja converter e vinculá-lo para uma nova tabela.
- a.Clique em Arquivo > Abrir.
- Na caixa de diálogo Abrir, selecione e abra o banco de dados na qual você deseja criar uma nova tabela.
- Clique em Dados externos > Arquivo de texto e siga as instruções para cada etapa, lembrando-se de que você vincule a tabela ao arquivo de texto.
O Access cria a nova tabela e a exibe no Painel de Navegação.
2. Exporte os dados da tabela vinculada para um arquivo de dados XML e um arquivo de esquema XML.
- Clique em Dados externos > Arquivo XML (no grupo Exportar ).
- Na caixa de diálogo Exportar - arquivo XML, especifique o nome do arquivo e o formato e clique em OK.
- Saia do Access.
Excel
1. Criar um mapa XML com base no arquivo do esquema XML exportado do Access.
- Se a caixa de diálogo de Várias raízes aparecer, verifique se que você escolher dataroot para poder criar uma tabela XML.
2.Crie uma tabela XML, mapeando o elemento dataroot. Consulte elementos XML de mapa para obter mais informações.
3. Importar o arquivo XML exportado do Access.
Observações : Há vários tipos de construções de elemento de esquema XML que Excel não dá suporte. As seguintes construções de elemento de esquema XML não podem ser importadas para o Excel:
<any>
Este elemento permite que você inclua elementos que não estão declarados pelo esquema.
<anyAttribute>
Este elemento permite que você inclua atributos que não estão declarados pelo esquema.
Estruturas recursivas Um exemplo comum de uma estrutura recursiva é uma hierarquia de funcionários e gerentes na qual os mesmos elementos XML são aninhados em vários níveis. Excel não dá suporte estruturas recursivas mais de um nível de profundidade.
Elementos abstratos Esses elementos devem ser declarados no esquema, mas nunca usados como elementos. Os elementos abstratos dependem de outros elementos para substituir.
Grupos de substituição Esses grupos permitem que um elemento seja trocado sempre que outro elemento for referenciado. Um elemento indica que é um membro de outro grupo de substituição do elemento pelo atributo <substitutionGroup>
.
Conteúdo misto Este conteúdo é declarado usando mixed="true" em uma definição de tipo complexa. O Excel não suporta o conteúdo simples do tipo complexo, mas suporta os atributos e marcas filhos definidos naquele tipo complexo.
Usar o esquema XML de amostra e arquivos de dados XML
Os dados de exemplo a seguir tem básicos elementos e estruturas XML que você pode usar para testar o mapeamento XML se você não tiver arquivos XML ou arquivos de texto para criar os arquivos XML. Veja aqui como você pode salvar esses dados de exemplo em arquivos em seu computador:
- Selecione o texto de exemplo do arquivo que você deseja copiar e pressione Ctrl + C.
- Inicie o bloco de notas e pressione Ctrl + V para colar o texto de exemplo.
- Pressione Ctrl + S para salvar o arquivo com o nome do arquivo e a extensão dos dados de exemplo que você copiou.
- Pressione Ctrl + N no bloco de notas e repita a etapa 1-3 para criar um arquivo para o segundo texto de exemplo.
- Feche o Bloco de Notas.
Dados XML de amostra (Despesas.xml)
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <Root> <EmployeeInfo> <Name>Jane Winston</Name> <Date>2001-01-01</Date> <Code>0001</Code> </EmployeeInfo> <ExpenseItem> <Date>2001-01-01</Date> <Description>Airfare</Description> <Amount>500.34</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-01</Date> <Description>Hotel</Description> <Amount>200</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-01</Date> <Description>Taxi Fare</Description> <Amount>100.00</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-01</Date> <Description>Long Distance Phone Charges</Description> <Amount>57.89</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-01</Date> <Description>Food</Description> <Amount>82.19</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-02</Date> <Description>Food</Description> <Amount>17.89</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-02</Date> <Description>Personal Items</Description> <Amount>32.54</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-03</Date> <Description>Taxi Fare</Description> <Amount>75.00</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-03</Date> <Description>Food</Description> <Amount>36.45</Amount> </ExpenseItem> <ExpenseItem> <Date>2001-01-03</Date> <Description>New Suit</Description> <Amount>750.00</Amount> </ExpenseItem> </Root> Esquema XML de amostra (Despesas.xsd) <?xml version="1.0" encoding="UTF-8" standalone="no" ?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:element name="Root"> <xsd:complexType> <xsd:sequence> <xsd:element minOccurs="0" maxOccurs="1" name="EmployeeInfo"> <xsd:complexType> <xsd:all> <xsd:element minOccurs="0" maxOccurs="1" name="Name" /> <xsd:element minOccurs="0" maxOccurs="1" name="Date" /> <xsd:element minOccurs="0" maxOccurs="1" name="Code" /> </xsd:all> </xsd:complexType> </xsd:element> <xsd:element minOccurs="0" maxOccurs="unbounded" name="ExpenseItem"> <xsd:complexType> <xsd:sequence> <xsd:element name="Date" type="xsd:date"/> <xsd:element name="Description" type="xsd:string"/> <xsd:element name="Amount" type="xsd:decimal" /> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema>
Criar um mapa XML
Criar um mapa XML, adicionando um esquema XML a uma pasta de trabalho. O esquema pode ser copiado de um arquivo de esquema XML . xsd, ou o Excel pode tentar inferir um de um arquivo de dados XML . xml.
1.Clique em desenvolvedor > fonte.
- Modo de Exibição de Dados vazi
- Se você não vir a guia Desenvolvedor, consulte Mostrar a guia Desenvolvedor.
2.No painel de tarefas Código-fonte XML, clique em Mapas XML e, em seguida, clique em Adicionar.
3.Na lista Examinar, clique na unidade, pasta ou local da Internet que contém o arquivo que você deseja abrir.
4.Clique no arquivo e clique em Abrir.
- Para um arquivo de esquema XML, o XML criará um mapa XML baseado no esquema XML. Se a caixa de diálogo de Várias raízes aparecer, escolha um de nós raiz definidos no arquivo de esquema XML.
- Para um arquivo de dados XML, o Excel irá tentar deduzir o esquema XML dos dados XML e, em seguida, cria um mapa XML.
5.Clique em OK.
O mapa XML é exibida no painel de tarefas Código-fonte XML.
Mapear elementos XML
Mapeie elementos XML em células com mapeamento único e células repetidas em tabelas XML, para que você possa criar um relacionamento entre a célula e o elemento de dados XML no esquema XML.
1.Clique em desenvolvedor > fonte.
- Modo de Exibição de Dados vazi
- Se você não vir a guia Desenvolvedor, consulte Mostrar a guia Desenvolvedor.
2.No painel de tarefas Código-fonte XML , selecione os elementos que você deseja mapear.
Para selecionar elementos não adjacentes, clique em um elemento, mantenha a tecla Ctrl pressionada e clique em cada elemento que você deseja mapear.
- Para mapear os elementos, faça o seguinte:
- Clique com botão direito os elementos selecionados e clique em Mapear elemento.
- Na caixa de diálogo elementos XML de mapa, selecione uma célula e clique em OK.
Dica : Você também pode arrastar os elementos selecionados para o local da planilha em que deseja que apareçam.
Cada elemento aparece em negrito no painel de tarefas Código-fonte XML para indicar que foi mapeado.
4.Decida como quer lidar com títulos e cabeçalhos de coluna:
- Ao arrastar um elemento XML não repetido para a planilha a fim de criar uma célula com mapeamento único, uma marca inteligente é exibida com três comandos, o que você pode usar para controlar a colocação do cabeçalho ou título:
- Meus Dados Já Têm Título Clique nesta opção para ignorar o cabeçalho do elemento XML porque a célula já têm um cabeçalho (à esquerda ou acima dos dados).
- Colocar Título XML à Esquerda Clique nesta opção para usar o cabeçalho do elemento XML como o título da célula (à esquerda dos dados).
- Colocar Título XML Acima Clique nesta opção para usar o cabeçalho do elemento XML como o título da célula (acima dos dados).
- Ao arrastar um elemento XML repetido para a planilha a fim de criar células repetidas em uma tabela XML, os nomes dos elementos XML são automaticamente usados como cabeçalhos de coluna para a tabela. Entretanto, você pode alterar os cabeçalhos de coluna para qualquer texto que desejar editando as células de cabeçalho das colunas.
- No painel de tarefas Código-fonte XML, clique em Opções para controlar mais comportamentos da tabela XML:
- Mesclar os Elementos Automaticamente Durante o Mapeamento Quando esta opção for selecionada, as tabelas XML são automaticamente expandidas quando você arrastar um elemento para uma célula adjacente à tabela XML.
- Meus Dados Possuem Cabeçalhos Quando esta opção for selecionada, os dados existentes podem ser usados como cabeçalhos de colunas ao mapear elementos repetidos em sua planilha.
Observações:
- Se todos os comandos XML estão esmaecidos e não é possível mapear elementos XML para nenhuma célula, a pasta de trabalho pode ser compartilhada. Clique em revisão > Compartilhar pasta de trabalho para verificar que e para removê-lo do compartilhados use conforme necessário.
- Se você quiser mapear elementos XML em uma pasta de trabalho que você deseja compartilhar, mapear os elementos XML para as células que você deseja, importa os dados XML, remova todos os mapas XML e, em seguida, compartilhe a pasta de trabalho.
- Se você não pode copiar uma tabela XML que contém os dados para outra pasta de trabalho, a tabela XML pode ter um mapa XML associado que define a estrutura de dados. Este mapa XML é armazenado na pasta de trabalho, mas quando você copia a tabela XML para uma nova pasta de trabalho, o mapa XML não está incluído automaticamente. Em vez de copiar a tabela XML, o Excel cria uma tabela do Excel que contém os mesmos dados. Se desejar que a nova tabela seja uma tabela XML, faça o seguinte:
- Adicione um mapa XML à nova pasta de trabalho usando o arquivo XML ou. xsd usado para criar o mapa XML original. Você deve salvar esses arquivos se você quiser adicionar mapas XML a outras pastas de trabalho.
- Mapeie os elementos XML para a tabela para transformá-la em tabela XML.
- Ao mapear um elemento XML repetido em uma célula mesclada, o Excel remove a mesclagem da célula. Este é o comportamento esperado, pois elementos recorrentes são projetados para trabalhar com somente células não mescladas.
É possível mapear os elementos XML únicos, não repetidos para uma célula mesclada, mas não é permitida a mapear um elemento XML repetido (ou um elemento que contém um elemento repetido) para uma célula mesclada. A célula será não mesclada e o elemento será mapeado para a célula onde se encontra o ponteiro.
Dicas : Você pode desmapear elementos XML que você não deseja usar, ou para impedir que o conteúdo das células sejam sobrescritos quando você importa dados XML. Por exemplo, você poderia desmapear temporariamente um elemento XML de uma única célula ou repetição células com fórmulas que você não deseja sobrescrever quando você importa um arquivo XML. Quando a importação for concluída, você pode mapear elemento XML para as células de fórmula novamente, para que você pode exportar os resultados das fórmulas para o arquivo de dados XML.
Desmapear elementos XML, clique com botão direito no nome no painel de tarefas Código-fonte XML e clique em Remover elemento.
Mostrar a guia Desenvolvedor
Se não vir a guia Desenvolvedor, faça o seguinte para exibi-la:
No Excel 2010, 2013 e 2016:
a.Clique em Arquivo > Opções.
b.Clique na categoria Personalizar Faixa de Opções.
c.Em Guias principais, marque a caixa desenvolvedor e clique em OK.
No Excel 2007:
a.Clique o botão Microsoft Office imagem do botão office > Opções do Excel.
b.Clique na categoria Popular.
c.Em Opções principais para trabalhar com o Excel, marque a caixa Mostrar guia Desenvolvedor na faixa de opções e clique em OK.