Vrátí hodnotu typu Variant (String), která obsahuje určený počet znaků z řetězce.
Syntaxe
Mid(řetězec, začátek [, délka ] )
Syntaxe funkce Mid obsahuje následující argumenty:
| Argument | Popis |
|---|---|
| řetězec | Povinný argument. Řetězcový výraz, z něhož jsou znaky vráceny. Pokud řetězec obsahuje hodnotu Null, vrátí se hodnota Null . |
| začátek | Povinný argument. Hodnota typu Long. Pozice znaku v řetězci , kterým začíná část, která má být převzata. Pokud je hodnota argumentu začátek větší než počet znaků v řetězci, vrátí funkce Mid řetězec nulové délky (""). |
| délka | Nepovinný argument. Hodnota typu Variant (Long). Počet znaků, které se mají vrátit. Pokud je tento argument vynechán nebo pokud text obsahuje méně než délkové znaky (včetně znaku na začátku), budou vráceny všechny znaky od počáteční pozice do konce řetězce. |
Poznámky
Pokud chcete určit počet znaků v řetězci, použijte funkci Len .
Poznámka
Funkci MidB používejte s údaji o bajtech obsaženými v řetězci, jako u jazyků s dvoubajtovou znakovou sadou. Místo zadání počtu znaků určují argumenty počet bajtů. Pokud se chcete podívat na ukázku kódu, který používá MidB, podívejte se na druhý příklad v ukázkovém tématu.
Příklady dotazů
| Výraz | Výsledky: |
|---|---|
| SELECT IDProduktu, Mid(IDProduktu;5) AS Expr1 FROM ProductSales; | Vrátí hodnotu IDProduktu a část IDProduktu začínající od pozice znaku 5 a výsledky zobrazí ve sloupci Výraz1. |
| SELECT IDProduktu, Mid(IDProduktu;5;4) AS testMid FROM ProductSales; | Vrátí "IDProduktu" a část IDProduktu začínající od pozice znaku 5, obsahující 4 znaky a výsledky zobrazí ve sloupci testMid. |
Příklady jazyka VBA
Poznámka
Následující příklady jazyka VBA ukazují použití této funkce v modulu VBA (Visual Basic pro Applications). Pokud chcete další informace o práci s modulem VBA, vyberte Referenční informace pro vývojáře, které najdete v rozevíracím seznamu vedle položky Hledat a do vyhledávacího pole napište požadované pojmy.
V prvním příkladu slouží funkce Mid k vrácení určeného počtu znaků z řetězce.
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".
V druhém příkladu slouží MidB a uživatelem definovaná funkce (MidMbcs) také k vrácení znaků z řetězce. Rozdíl je v tom, že vstupní řetězec je ANSI a délka je v bajtech.
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"