ID do artigo: 288215 - Última revisão: sexta-feira, 2 de novembro de 2007 - Revisão: 4.2

Informações sobre o Microsoft Excel 2002 e XML

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Expandir tudo | Recolher tudo

Sumário

Excel 2002 permite que você abrir e salvar arquivos no formato XML (Extensible Markup Language). Este artigo fornece uma visão geral do XML e folhas de estilo XML e como eles podem ser usados com o Excel. Os seguintes tópicos são abordados:

Mais Informações

O que é XML?

XML é um formato de texto para dados estruturados. Como o XML é fácil criar e interpretar, ele é usado em uma ampla variedade de aplicativos. Segue XML apropriado ou bem-formado, um conjunto de diretrizes que determina a estrutura de dados ainda permite que o desenvolvedor XML grande flexibilidade para criar um número ilimitado de personalizado marcas que melhor descrevem os dados e relações que podem existir dentro dos dados.

Como HTML, XML é uma linguagem de marcação de texto é organizado com uma combinação de marcas (palavras entre colchetes angulares < e >) e atributos (do nome do formulário = "valor"). Mas enquanto o HTML especifica o que cada marca e atributo significa e como devem ser processado para exibição, o XML usa as marcas somente para delinear elementos de dados. Como você pode usar os nomes de marca com o XML, é o critério único de um aplicativo para interpretar os dados e seu significado. Embora os desenvolvedores de XML sejam livres para criar qualquer marcas ou hierarquia melhor ajustar seus dados, há um conjunto de especificações que devem ser seguidas para garantir que o XML é considerado bem-formado . XML bem formado tem as seguintes características:
  • Ele contém exatamente um elemento raiz com um nome exclusivo que não aparece em qualquer outro elemento no documento.
  • Elementos são aninhados adequadamente para que não marcas de sobreposição entre elementos.
  • Elemento todas as marcas são fechadas.
  • Elemento início e fim marcas uso uma ocorrência consistente (XML é diferencia maiúsculas de minúsculas).
  • Todos os atributos do elemento são colocados entre aspas, duplas ou simples.
  • Caracteres especiais (como &, <, >) são definidas como entidades internas (&, <, >).
A seguir está um exemplo do XML bem formado:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="dictionary.xsl" ?>
<Dictionary>
  <Entries>
    <Entry>
      <Word Type="1">Energetic</Word>
      <Definition>Having, exerting, or displaying energy</Definition>
    </Entry>
    <Entry>
      <Word Type="1">Happy</Word>
      <Definition>Enjoying, displaying, or characterized by pleasure or joy</Definition>
    </Entry>
    <Entry>
      <Word Type="2">Emotion</Word>
      <Definition>A complex, strong subjective response</Definition>
    </Entry>
  </Entries>
</Dictionary>
				
Figura 1 - exemplo de XML bem estruturada (Dictionary.xml)
O XML na Figura 1 descreve entradas em um dicionário. O elemento raiz é <dictionary>, e a raiz contém um elemento filho chamado <entries>. <entries> contém três filhos, cada um deles descreve os dados para uma entrada individual no dicionário. Para cada entrada, há dois elementos filho: <word> e <definition>. O valor de cada elemento <Word> é a palavra propriamente; <Word> elementos também tem um atributo Type que indica se a palavra é um adjetivo (1) ou um substantivo (2). <definition> elementos têm um valor de texto e sem atributos.

O que é uma folha de estilos XML?

As marcas XML descrevem os dados em um arquivo de texto, mas XML sozinho não especifica como os dados devem ser apresentados ao usuário. Regras de formatação para dados XML com freqüência estão contidas em folhas de estilo XML. Folhas de estilo XML são documentos XML bem formados que usam XSL (linguagem de estilo extensível) para transformar dados XML para apresentação. Você pode ter várias folhas de estilo para os mesmos dados XML. Enquanto sua estrutura de dados XML real pode permanecem os mesmos, folhas de estilo fornecem flexibilidade para apresentar os dados de muitas maneiras diferentes.
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
  <xsl:template match="/">
    <HTML>
      <BODY>
        <UL>
          <xsl:for-each order-by="+ Word" select="Dictionary/Entries/Entry">
            <LI>
              <B><xsl:value-of select="Word"/></B>
              <xsl:if test="Word[@Type='1']"><I>adj.</I></xsl:if>
              <xsl:if test="Word[@Type='2']"><I>n.</I></xsl:if>
              <BR/>
              <xsl:value-of select="Definition"/>
              <BR/><BR/>
            </LI>
          </xsl:for-each>
        </UL>
      </BODY>
    </HTML>
  </xsl:template>
</xsl:stylesheet>
				
a Figura 2: folha de estilos XML (Dictionary.xsl)

Dictionary.xsl, mostrado na Figura 2, é uma folha de estilos que pode ser usada para transformar o exemplo Dictionary.xml. A transformação resulta em uma apresentação de HTML dos dados que podem ser exibidos em um navegador da Web. O XSL classifica entradas do dicionário em ordem alfabética em uma lista com marcadores e formata cada componente da entrada do dicionário. O XML transformado é processado no navegador semelhante à seguinte:
  • emoção n.
    Uma resposta subjetiva complexa e alta segurança

  • energética cambial
    Tendo, exerting ou exibindo energia

  • feliz cambial
    Aproveitando, exibição ou caracterizado pela prazer ou alegria

faça check-out : copiar e colar o XML na Figura 1 em qualquer editor de texto e salve-o como Dictionary.xml. Em seguida, copie e cole a folha de estilos XML na Figura 2 e salve-o como Dictionary.xsl na mesma pasta como Dictionary.xml. Inicie o Internet Explorer e navegue até Dictionary.xml.

Como Excel converter arquivos XML?

O Excel pode abrir qualquer arquivo XML que está bem formado. Arquivos XML podem ser abertos diretamente do comando Abrir no menu arquivo . Também é podem abrir arquivos XML por meio de programação usando métodos Open ou OpenXML da coleção Workbooks . Independentemente se você abre o XML por meio de código ou através da interface do usuário (UI), o arquivo está marcado como somente leitura para que você não pode substituir acidentalmente seu arquivo fonte original por um no XML Spreadsheet (XMLSS) format.

XML não estruturados

No Excel, quando você importar o XML que não está no formato Planilha XML (XMLSS), o Excel usa um algoritmo de mesclagem especial para carregar os dados em linhas e colunas. Planilhas do Excel são entidades bidimensionais compostas de linhas e colunas; como XML pode ter mais de duas dimensões, mesclar é necessário para interpretar o XML para que ele pode ser carregado em células em uma planilha.

Considere os seguintes dois conjuntos de XML, que representam essencialmente os mesmos dados de maneiras diferentes:

<?xml version="1.0"?>
<Customer>
   <CustomerID>1234</CustomerID>
   <FirstName>John</FirstName>
   <LastName>Doe</LastName>
</Customer>
				
Figura 3: Cliente XML com elementos filho
<?xml version="1.0"?>
<Customer CustomerID="1234" FirstName="John" LastName="Doe"/>
				
Figura 4: cliente XML com atributos
Se você carregar o XML na Figura 3 no Excel, os dados são importados para as células como mostrado abaixo:

 ABC
1/Customer  
2/CustomerID/FirstName/LastName
31234JohnDoe

Excel trata atributos exatamente como elementos filho. Para eliminar o conflito de nome com elementos existentes, o Excel acrescenta início o sinal de arroba (@ na frente de nomes de atributo para consistência com os padrões de nomes para padrões XSL). Portanto, o XML na Figura 4 é carregado em células da mesma forma, com exceção de que as células A2, B2 e C2 contiverem "/@CustomerID", "/@FirstName" e "/@LastName", respectivamente.

O XML do cliente nas figuras 3 e 4 segue uma estrutura bidimensional, que é fácil ver. Mas considere o seguinte XML cliente, que não pode ser facilmente interpretados como bidimensional devido a adição de nível <order>:

<?xml version="1.0"?>
<Customers>
  <Customer>
    <CustomerID>1234</CustomerID>
    <FirstName>John</FirstName>
    <LastName>Doe</LastName>
    <Orders>
      <Order ProdID="AAA" Amt="10"/>
      <Order ProdID="BBB" Amt="3"/>
    </Orders>
  </Customer>
  <Customer>
    <CustomerID>5678</CustomerID>
    <FirstName>Alice</FirstName>
    <LastName>Smith</LastName>
    <Orders>
      <Order ProdID="AAA" Amt="5"/>
    </Orders>
  </Customer>
</Customers>
				
Figura 5: Cliente XML com dois níveis abaixo do elemento raiz

No XML na Figura 5, há um cliente com dois pedidos e outro cliente com uma ordem. O Excel deve importar o XML de tal forma que a relação entre pedidos e clientes é mantida. Excel importa o XML para três linhas como mostrado abaixo:


 ABCDEFG
1/Customer      
2/Customer#id/Customer/CustomerID/Customer/CustomerID/#agg/Customer/FirstName/Customer/LastName/Customer/Orders/Order/@Amt/Customer/Orders/Order/@ProdID
3112341234JohnDoe10AAA
411234 JohnDoe3BBB
5256785678AliceSmith5AAA


Duas colunas adicionais estão presentes: uma coluna #id que associa a linha com o nó <customer> e uma coluna #agg que representa o que pode ser considerado um "FillDown". Com #agg, o valor do primeiro nó no nível acima dela é listado uma vez e, em seguida, omitido para linhas restantes.

Observe também que a coluna para <Amt> precede a coluna para <ProdID> mesmo que ele apareça após <ProdID> no XML real. O flattener carrega os elementos em ordem alfabética da esquerda para a direita, não em ordem natural em que aparecem no documento XML original.

folhas de estilo

Usando folhas de estilo pode fornecer vantagens significativas para abrir arquivos XML no Excel. Usando uma folha de estilos, você pode controlar melhor como dados são colocados nas células e até mesmo fornecer alguma formatação para as células. Quando você abre um arquivo XML no Excel e que arquivo XML contém um ou mais instruções de processamento de folha de estilos xml , o Excel solicita que você selecione folhas de estilo que deseja usar para transformação.

Novamente, considere o XML do cliente na Figura 5. Se você adicionar uma instrução de processamento para o XML do cliente ( <? xml-folha de estilos tipo = "texto/xsl" href="Customer.xsl"? >), você pode controlar quais colunas na planilha os dados aparecem no e aplicar a formatação personalizada. A seguir está um exemplo de folha de estilos que pode ser usado como uma transformação para o exemplo de XML do cliente.

<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:template match="/">
   <HTML>
     <HEAD>
       <STYLE>   
         .HDR { background-color:bisque;font-weight:bold }
         .CustomerRow { border-top:thin solid black }
       </STYLE>
     </HEAD>
  
     <BODY>
       <TABLE>
         <COLGROUP WIDTH="100" ALIGN="CENTER"></COLGROUP>
         <COLGROUP WIDTH="100" ALIGN="LEFT"></COLGROUP>
         <COLGROUP SPAN="2" WIDTH="80" ALIGN="CENTER"></COLGROUP>
         <TD CLASS="HDR">Customer ID</TD>
         <TD CLASS="HDR">Name</TD>
         <TD CLASS="HDR">Product ID</TD>
         <TD CLASS="HDR">Amount</TD>
         <xsl:for-each select="Customers/Customer">
           <TR>
             <TD CLASS = "CustomerRow">
               <xsl:value-of select="CustomerID"/>
             </TD>
             <TD CLASS = "CustomerRow">
               <xsl:value-of select="FirstName"/> <xsl:value-of select="LastName"/>
             </TD>
             <TD CLASS = "CustomerRow">
               <xsl:value-of select="./Orders/Order/@ProdID"/>
             </TD>
             <TD CLASS = "CustomerRow">
               <xsl:value-of select="./Orders/Order/@Amt"/>
             </TD>
           </TR>
           <xsl:for-each select="./Orders/Order">
             <xsl:if test="position() > 1">
               <TR>
                 <TD> </TD><TD> </TD>
                 <TD><xsl:value-of select="@ProdID"/></TD>
                 <TD><xsl:value-of select="@Amt"/></TD>
               </TR>
             </xsl:if>
           </xsl:for-each>
         </xsl:for-each>
       <TR><TD CLASS="CustomerRow" COLSPAN="4"> </TD></TR>
       </TABLE>
     </BODY>
   </HTML>
 </xsl:template>
</xsl:stylesheet>
Figura 6 - cliente XML Stylesheet (Customer.xsl)
A folha de estilos transforma o XML em HTML válido (o que o Excel pode converter em seu formato nativo). Quando você abre o XML do cliente com essa folha de estilos aplicada, o Excel exibe os dados como uma tabela de quatro colunas com cabeçalhos (CÓDIGODOCLIENTE, nome, identificação do produto e valor). Formatação, como atributos de fonte, cores de plano de fundo de célula e bordas de célula também está presente na tabela.

faça check-out : copiar e colar o XML na Figura 5 em qualquer editor de texto e salve-o como Customer.xml. Em seguida, copie a folha de estilos XML na Figura 6 e salve-o como Customer.xsl na mesma pasta como Customer.xml. Inicie o Excel 2002 e abra o arquivo com e sem a folha de estilos aplicada a ver as diferenças que torna a folha de estilos.

Solucionando problemas de erros abrindo os arquivos XML

Se você tentar abrir um arquivo XML que não está bem formado, você receberá um alerta ou um "script analisar erro". Quando um alerta for exibido, ele fornece uma descrição de por que o XML não pôde ser aberto. A descrição do alerta também pode fornecer detalhes no nó que causou a conversão falhar. Em alguns casos no qual há um erro de análise, você pode receber uma caixa de diálogo que lista os erros em vez de uma mensagem de alerta; erros de análise de script são registrados em um arquivo chamado XMLErr.log na pasta Temp. Para examinar rapidamente o conteúdo de XMLErr.log, execute estas etapas:
  1. Em um prompt de comando, digite cd % temp % e pressione ENTER. A pasta atual é alterada para a pasta Temp.
  2. No prompt de comando, digite tipo xmlerr.log e pressione ENTER para exibir o conteúdo do arquivo de log.
Outro problema que você pode encontrar quando você abre o arquivo XML é que o Assistente de importação de texto aparece. Arquivos XML são apenas arquivos de texto que são estruturados de maneira muito específica. Para que o Excel reconheça que o arquivo que você está abrindo é XML e não texto sem formatação, o primeiro item em seu arquivo XML deve ser uma declaração XML que contém, no mínimo, o nome reservado xml e um número de versão. O XML também deve conter pelo menos um elemento (o elemento raiz):
<?xml version="1.0"?>
<MyXML>
</MyXML>
				

O formato de planilha XML (XMLSS)

Excel pode salvar pastas de trabalho em XML. Quando você salva uma pasta de trabalho como XML, o Excel salva a pasta de trabalho no formato Planilha XML (XMLSS). XMLSS descreve o conteúdo da pasta de trabalho persistentes dados da célula e fórmulas, formatos de célula, configurações de planilha e as configurações de pasta de trabalho. No entanto, alguns recursos do Excel não podem ser mantidos em XML. Incluem:
  • Gráficos
  • Objetos OLE
  • Formas do desenho ou AutoFormas
  • Projetos do VBA
  • Grupo de estrutura de tópicos
XMLSS é um formato que é comum para Excel 2002 e o componente planilha do Office XP, para que arquivos em XMLSS podem ser compartilhados entre os dois. Você também pode criar suas próprias folhas de estilo XMLSS arquivos transformar os dados para outro formato para que podem ser compartilhado com qualquer número de aplicativos.

Integração do XML em suas soluções do Excel

Usando dados XML apresenta o desenvolvedor com muitas oportunidades de soluções do Excel 2002.

Por exemplo, você pode criar pastas de trabalho multisheet XMLSS em tempo de execução sem automatizar o Excel (que requer carregar o arquivo executável do Excel). Como o Excel é um servidor de automatização fora de processo, as chamadas ao modelo de objeto do Excel podem ser caras em termos de desempenho. Você pode criar XMLSS completamente em andamento usando somente o Microsoft XML Parser (MSXML) e folhas de estilo XML. Ou, você pode usar o componente planilha do Office XP (em processo) para criar uma planilha e recuperar o XMLSS para a planilha. Em ambos os casos, o XMLSS resultante pode ser aberto diretamente no Excel como um formato nativo. Por fluxo contínuo XMLSS para navegadores de cliente usando o tipo de conteúdo de MIME (Multipurpose Internet Mail Extensions) do Excel, aplicativos, como aqueles que use Active Server Pages (ASP) pode criar pastas de trabalho complexas sem a sobrecarga de executar o Excel no servidor da Web. Exemplo de código que demonstra possível usa de XMLSS geração, clique no números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:

288130  (http://support.microsoft.com/kb/288130/ ) Como usar o ASP para criar a planilha XML para exibição do lado do cliente
285891  (http://support.microsoft.com/kb/285891/ ) Como usar o Visual Basic ou ASP para criar uma planilha XML para Excel 2002 e Excel 2003
Outro uso potencial do XML em uma solução de Excel é extrair dados de um intervalo de células em um formato que pode ser facilmente compartilhado com outros aplicativos. XMLSS podem ser extraídos de células em uma planilha, chamando a propriedade Value do objeto Range com o parâmetro xlRangeValueXMLSpreadsheet . Você pode usar uma folha de estilos para transformar o XMLSS para qualquer XML que pode ser usado por outro aplicativo. Um uso possível dessa é transformar o XMLSS para XML personalizado que pode ser lançado e processado por um aplicativo da Web. Para obter um exemplo dessa técnica, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:

278976  (http://support.microsoft.com/kb/278976/ ) Como usar XSL para transformar a planilha XML do Excel para uso do lado do servidor

Referências

Para obter mais informações, consulte os seguintes sites:
World Wide Web Consortium (W3C)
http://www.w3.org (http://www.w3.org)
Guia do desenvolvedor do XSLT
http://msdn2.microsoft.com/en-us/library/ms759204.aspx (http://msdn2.microsoft.com/en-us/library/ms759204.aspx)
Visão geral XML
http://msdn2.microsoft.com/en-us/library/aa153035.aspx (http://msdn2.microsoft.com/en-us/library/aa153035.aspx)
XML Developer Center
http://msdn2.microsoft.com/en-us/xml/default.aspx (http://msdn2.microsoft.com/en-us/xml/default.aspx)

A informação contida neste artigo aplica-se a:
  • Microsoft Excel 2002 Standard Edition
Palavras-chave: 
kbmt kbinfo KB288215 KbMtpt
Tradução automáticaTradução automática
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: 288215  (http://support.microsoft.com/kb/288215/en-us/ )