Função EmCad

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

Ver alguns exemplos

Sintaxe

InStr ([início, ] Seqüência1, 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 inicial de cada pesquisa. Se for omitida, a procura começa na posição do primeiro caráter. Se o início contiver nulo, ocorrerá 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. Expressão de cadeia procurada.

comparar

Opcional. Especifica o tipo de comparação de cadeias. Se comparar for Nulo, ocorre um erro. Se comparar for omitido, a definição opçãocomparar determina o tipo de comparação. Especifique um LCID (LocaleID) válido 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 do argumento Compare são:

Constante

Valor

Descrição

vbUseCompareOption

-1

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

vbBinaryCompare

0

Efetua uma comparação binária.

vbTextCompare

1

Efetua uma comparação textual.

vbDatabaseCompare

2

apenasMicrosoft Office Access 2007. Efetua uma comparação com base na informação da sua base de dados.


Valores Devolvidos

Se

InStr devolve

a seqüência1 é de comprimento zero

0

seqüência1 é nulo

Null

cadeia2 é de comprimento zero

começar

cadeia2 é nulo

Null

cadeia2 não encontrado

0

cadeia2 encontrado em Seqüência1

Posição na qual a correspondência é encontrada

Iniciar > seqüência2

0


Observações

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

Exemplos

Utilizar a função InStr numa expressão    Pode utilizar o InStr em qualquer lugar onde possa utilizar as expressões. Por exemplo, se pretender encontrar a posição do primeiro período (.) num campo que contenha endereços IP (com o nome IPAddress), pode utilizar o InStr para o encontrar, da seguinte forma:

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

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

Em seguida, pode utilizar outras funções, operando na saída da função InStr , para extrair a parte do endereço IP que precede o primeiro período, da seguinte forma:

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

Neste exemplo, InStr (1, [IPAddress], ".") Devolve a posição do primeiro período. Subtrair 1 determina o número de carateres que precede o primeiro ponto, neste caso, 2. A função esquerda , em seguida, extrai esse número de carateres da parte esquerda do campo IPAddress, devolvendo o valor 10.

Utilizar o 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 como 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 outra.

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.

Nota:  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 indicar-nos se estas informações foram úteis? Eis o artigo em inglês para sua referência.​

Consulte Também

As funções de cadeia e como utilizá-las

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.

×