Compartilhar via


Module.Find method (Access) (Método Module.Find [Access])

Localiza o texto especificado em um módulo padrão ou um módulo de classe.

Sintaxe

expressão. Localizar (Destino, StartLine, StartColumn, EndLine, EndColumn, WholeWord, MatchCase, PatternSearch)

expressão Uma variável que representa um objeto Module .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Target Obrigatório String O texto que você deseja localizar.
Linha de Início Obrigatório Long A linha na qual iniciar a pesquisa. Se for encontrada uma correspondência, o valor do argumento Linha Inicial é definido como a linha na qual o caráter inicial do texto correspondente é encontrado.
StartColumn Obrigatório Long A coluna na qual iniciar a pesquisa. Cada caractere em uma linha está em uma coluna separada, começando com zero no lado esquerdo do módulo. Se for encontrada uma correspondência, o valor do argumento StartColumn é definido para a coluna na qual é encontrado o caráter inicial do texto correspondente.
EndLine Obrigatório Long A linha na qual iniciar a pesquisa. Se for encontrada uma correspondência, o valor do argumento EndLine é definido como a linha na qual o caráter final do texto correspondente é encontrado.
Coluna Final Obrigatório Long A coluna na qual interromper a pesquisa. Se for encontrada uma correspondência, o valor do argumento EndColumn é definido para a coluna na qual é encontrado o caráter inicial do texto correspondente.
Palavra Inteira Opcional Boolean True resulta em uma pesquisa somente por palavras inteiras. O padrão é False.
MatchCase Opcional Boolean True resulta em uma pesquisa por palavras com caso o argumento Target de correspondência. O padrão é False.
Pesquisa de Padrões Opcional Boolean True resulta em uma pesquisa na qual o argumento Target pode conter caracteres curinga, como um asterisco (*) ou um ponto de interrogação (2 _). O padrão é False.

Valor de retorno

Booliano

Comentários

O método Find procura a cadeia de caracteres de texto especificado em um objeto Module. Se a cadeia de caracteres for localizada, o método Find retornará True.

Para determinar a posição no módulo em que o texto de pesquisa foi encontrado, transmita variáveis vazias para o método Localizar para os argumentos StartLine, StartColumn, EndLine e EndColumn . Se uma correspondência for localizada, esses argumentos irão conter o número da linha e a posição da coluna na qual o texto de pesquisa começa (StartLine, StartColumn) e termina (EndLine, EndColumn).

Por exemplo, se o texto de pesquisa for encontrado na linha 5, começar na coluna 10 e terminar na coluna 20, os valores destes argumentos serão StartLine = 5, StartColumn = 10, EndLine = 5, EndColumn = 20.

Exemplo

A função a seguir localiza em um módulo uma sequência especificada e substitui a linha que contém essa sequência por uma nova linha especificada.

Function FindAndReplace(strModuleName As String, _ 
 strSearchText As String, _ 
 strNewText As String) As Boolean 
 Dim mdl As Module 
 Dim lngSLine As Long, lngSCol As Long 
 Dim lngELine As Long, lngECol As Long 
 Dim strLine As String, strNewLine As String 
 Dim intChr As Integer, intBefore As Integer, _ 
 intAfter As Integer 
 Dim strLeft As String, strRight As String 
 
 ' Open module. 
 DoCmd.OpenModule strModuleName 
 ' Return reference to Module object. 
 Set mdl = Modules(strModuleName) 
 
 ' Search for string. 
 If mdl.Find(strSearchText, lngSLine, lngSCol, lngELine, _ 
 lngECol) Then 
 ' Store text of line containing string. 
 strLine = mdl.Lines(lngSLine, Abs(lngELine - lngSLine) + 1) 
 ' Determine length of line. 
 intChr = Len(strLine) 
 ' Determine number of characters preceding search text. 
 intBefore = lngSCol - 1 
 ' Determine number of characters following search text. 
 intAfter = intChr - CInt(lngECol - 1) 
 ' Store characters to left of search text. 
 strLeft = Left$(strLine, intBefore) 
 ' Store characters to right of search text. 
 strRight = Right$(strLine, intAfter) 
 ' Construct string with replacement text. 
 strNewLine = strLeft & strNewText & strRight 
 ' Replace original line. 
 mdl.ReplaceLine lngSLine, strNewLine 
 FindAndReplace = True 
 Else 
 MsgBox "Text not found." 
 FindAndReplace = False 
 End If 
 
Exit_FindAndReplace: 
 Exit Function 
 
Error_FindAndReplace: 
 
MsgBox Err & ": " & Err.Description 
 FindAndReplace = False 
 Resume Exit_FindAndReplace 
End Function

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.