Retorna uma Variante (Cadeia) que contém um número especificado de caracteres de uma cadeia.
Sintaxe
Mid( string, start [, length ] )
A sintaxe de função média tem esses argumentos:
Argumento |
Descrição |
cadeia |
Obrigatório. expressão de cadeia de caracteres de quais caracteres são retornados. Se a cadeia de caracteres contiver Null, Null será retornado. |
início |
Obrigatório. Longas. Posição do caractere na cadeia de caracteres na qual a parte a ser tomada começa. Se o início for maior que o número de caracteres na cadeia de caracteres, Mid retornará uma cadeia de caracteres de comprimento zero (""). |
comprimento |
Opcional. Variant (Long). Número de caracteres que devem ser retornados. Se omitido ou se houver menos caracteres de comprimento no texto (incluindo o caractere no início), todos os caracteres da posição inicial até o final da cadeia de caracteres serão retornados. |
Comentários
Para determinar o número de caracteres na cadeia de caracteres, use a função Len .
Observação: Use a função MidB com dados de bytes contidos em uma cadeia de caracteres, como em idiomas de conjunto de caracteres de bytes duplos. Em vez de especificar o número de caracteres, os argumentos especificam números de bytes. Para obter o código de exemplo que usa MidB, consulte o segundo exemplo no tópico de exemplo.
Exemplos de consulta
Expressão |
Resultados |
SELECT ProductID, Mid(ProductID,5) AS Expr1 FROM ProductSales; |
Retorna o "ProductID" e a parte do ProductID a partir da posição 5 do caractere e exibe os resultados na coluna Expr1. |
SELECT ProductID, Mid(ProductID,5,4) AS testMid FROM ProductSales; |
Retorna o "ProductID" e a parte do ProductID a partir da posição 5 do caractere, contendo 4 caracteres e exibe os resultados no testMid da coluna. |
Exemplos de VBA
Observação: Exemplos a seguir demonstram o uso dessa função em um módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, selecione Referência do Desenvolvedor na lista suspensa ao lado de Pesquisar e insira um ou mais termos na caixa de pesquisa.
O primeiro exemplo usa a função Mid para retornar um número especificado de caracteres de uma cadeia de caracteres.
Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo" ' Create text string.
FirstWord = Mid(MyString, 1, 3) ' Returns "Mid".
LastWord = Mid(MyString, 14, 4) ' Returns "Demo".
MidWords = Mid(MyString, 5) ' Returns "Function Demo".
O segundo exemplo usa MidB e uma função definida pelo usuário (MidMbcs) para também retornar caracteres da cadeia de caracteres. A diferença aqui é que a cadeia de caracteres de entrada é ANSI e o comprimento está em bytes.
Function MidMbcs(ByVal str as String, start, length)
MidMbcs = StrConv(MidB(StrConv(str, vbFromUnicode), _
start, length), vbUnicode)
End Function
Dim MyString
MyString = "AbCdEfG"
' Where "A", "C", "E", and "G" are DBCS and "b", "d",
' and "f" are SBCS.
MyNewString = Mid(MyString, 3, 4)
' Returns ""CdEf"
MyNewString = MidB(MyString, 3, 4)
' Returns ""bC"
MyNewString = MidMbcs(MyString, 3, 4)
' Returns "bCd"