Função EmCad

Nota: Queremos fornecer-lhe os conteúdos de ajuda mais recentes o mais rapidamente possível e no seu idioma. Esta página foi traduzida automaticamente e pode conter erros gramaticais ou imprecisões. O nosso objetivo é que estes conteúdos lhe sejam úteis. Pode informar-nos se as informações foram úteis no final desta página? Eis o artigo em inglês para referência.

Devolve uma Variante (Longo) especificando a posição da primeira ocorrência de uma cadeia dentro de outra.

Ver alguns exemplos

Sintaxe

InStr ([Iniciar, ] cadeia1, cadeia2 [Comparar ] )

A sintaxe da função InStr tem os seguintes argumentos:

Argumento

Descrição

começar

Opcional. Expressão numérica que define a posição de início de cada procura. Se for omitido, pesquisa começa pela primeira posição do caráter. Se Iniciar contiver Null, ocorre um erro. O argumento início é necessário se Comparar for especificado.

cadeia1

Obrigatório. Expressão de cadeia a ser procurada.

cadeia2

Obrigatório. Cadeia da expressão procurada.

Comparar

Opcional. Especifica o tipo de comparação de cadeias. Se Comparar é Null, ocorre um erro. Se Comparar for omitido, a definição da opçãoComparar determina o tipo de comparação. Especifique um LCID válido (LocaleID) para utilizar regras específicas de região na comparação.

Sugestão: No Access 2010, o Construtor de Expressões tem IntelliSense, para que possa ver que argumentos a sua expressão necessita. 

Definições

As definições de argumento Comparar são:

Constante

Valor

Descrição

vbUseCompareOption

-1

Executa uma comparação utilizando a definição da instrução Option Compare .

vbBinaryCompare

0

Executa uma comparação binária.

vbTextCompare

1

Executa uma comparação textual.

vbDatabaseCompare

2

Microsoft Office Access 2007 apenas. Executa uma comparação com base nas informações na base de dados.


Valores Devolvidos

If

InStr devolve

cadeia1 for de comprimento zero

0

cadeia1 é nulo

Nulo

cadeia2 for de comprimento zero

Iniciar

cadeia2 é nulo

Nulo

cadeia2 não foi encontrado

0

cadeia2 é que se encontram na cadeia1

Posição no qual correspondência for encontrada

Iniciar > cadeia2

0


Observações

A função de EmCadB é utilizada com dados de byte contidos numa cadeia. Em vez de voltar a posição do caráter da primeira ocorrência de uma cadeia dentro de outro, EmCadB devolve a posição de byte.

Exemplos

Utilizar a função InStr numa expressão    Pode utilizar InStr sempre que é possível utilizar expressões. Por exemplo, se pretender localizar a posição do primeiro período (.) num campo que contém os endereços IP (endereço de IP com nome), pode utilizar InStr para localizá-lo, desta forma:

InStr(1,[IPAddress],".")

A função InStr examina cada valor no campo Endereço IP e devolve a posição do primeiro período. Por conseguinte, se for a primeira parte do endereço IP 10., a função devolve o valor 3.

Em seguida, pode utilizar outras funções, a funcionar com o resultado da função InStr , para extrair a parte do endereço IP que antecede semelhantes primeiro período, assim:

Left([IPAddress],(Instr(1,[IPAddress],".") -1))

Neste exemplo, InStr(1,[IPAddress],".") Devolve a posição do primeiro período. 1 subtraindo determina a quantidade de carateres de preceder o primeiro período, neste caso, 2. A função esquerda , em seguida, extrai que muitas carateres de uma parte esquerda do campo de endereço IP, devolver o valor 10.

Utilizar InStr no código VBA   

Nota: Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre trabalhar com o VBA, selecione Referência para Programadores na lista pendente junto a Procurar e introduza um ou mais termos na caixa de pesquisa.

Este exemplo utiliza a função InStr para devolver a posição da primeira ocorrência de uma cadeia dentro de outro.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.
Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×