Classe XPath (Excel VBA)

A classe XPath representa um XPath que foi mapeado para um objeto Range ou ListColumn .

Set

Para usar uma variável de classe XPath, ela primeiro precisa ser instanciada por exemplo

Dim xph as XPath
Set xph = ActiveCell.XPath

Os procedimentos a seguir podem ser usados ​​para definir variáveis ​​do tipo XPath: ListColumn.XPath e Range.XPath

Clear

Limpa todas as informações do esquema XPath para o intervalo mapeado.

Clear afeta o intervalo inteiro mapeado para o objeto XPath . Este método não limpa os dados das células mapeadas para o XPath especificado. Use o método Clear do objeto Range para limpar os dados das células. Se o XPath especificado for mapeado em uma lista XML, o mapeamento de esquema será removido, mas a lista não será excluída da planilha. Se o intervalo mapeado for uma única célula, a célula única será removida e os dados permanecerão. Este método produz um erro se qualquer uma das seguintes condições for verdadeira:

ActiveCell.XPath.Clear

Map

Retorna um objeto XmlMap que representa o mapa de esquema que contém o objeto XPath especificado. Somente leitura.

Dim xmlmpMap As XmlMap
Set xmlmpMap = ActiveCell.XPath.Map

Parent

Retorna o objeto pai do objeto especificado. Somente leitura.

Repeating

Retorna true se o objeto XPath especificado estiver MAPEADO para uma lista XML; retorna false se o objeto XPath é mapeado para uma única célula. Boolean somente leitura.

Dim booRepeating As Boolean
booRepeating = ActiveCell.XPath.Repeating

SetValue

Mapeia o objeto XPath especificado para um objeto ListColumn ou a coleção Range. Se o objeto XPath tiver sido mapeado anteriormente para o objeto ListColumn ou a coleção Range, o método SetValue definirá as propriedades do objeto XPath.

Consulte a Propriedade IsExportable do objeto XmlMap para obter uma discussão sobre o suporte a XPath no Excel. Se a expressão XPath for inválida ou se o XPath especificado já tiver sido mapeado, ocorrerá um erro em tempo de execução. Se o Excel não puder resolver o namespace, ocorrerá um erro em tempo de execução. Este método produz um erro se qualquer uma das seguintes condições for verdadeira:

Sintaxe : expression.SetValue (Map, XPath, SelectionNamespace, Repeating)

Dim strXPath As String: strXPath = 
ActiveCell.XPath.SetValue Map:=, XPath:=strXPath

Arguments

O seguinte argumento é opcional

Map (XmlMap) - As informações sobre mapas comas quais o intervalo mapeado estará associado.

XPath (String) - Uma expressão XPath válida que informa ao Excel quais dados XML devem aparecer neste intervalo mapeado. A cadeia de caracteres XPath também pode conter filtros válidos, e nesse caso, apenas um subconjunto dos dados que o XPath aponta será exibido neste intervalo mapeado.

Os seguintes argumentos são opcionais

SelectionNamespace (XPath) - Especifica quaisquer prefixos de namespace usados no argumento XPath . Esse argumento poderá ser omitido se o objeto XPath não contiver nenhum prefixo, ou o objeto XPath usar os prefixos internos do Microsoft Excel.

Repeating (XPath) - Especifica se o objeto XPath deve ser vinculado a uma coluna em uma lista XML ou mapeado para uma única célula. Defina como True para vincular o objeto XPath a uma coluna em uma lista XML. False força a criação de uma célula que não se repete. Se o intervalo for maior que uma única célula e false for especificado, ocorrerá um erro em tempo de execução.

Value

Retorna um String que representa o XPath do objeto especificado.

Dim strValue As String
strValue = ActiveCell.XPath.Value