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, ze kterého jsou vráceny znaky. 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á požadovaná část. Pokud je hodnota argumentu začátek větší než počet znaků v řetězci, vrátí funkce Mid řetězec s nulovou délkou (""). |
délka |
Nepovinný argument. Hodnota typu Variant (Long). Počet znaků, které se mají vrátit. Pokud není tento argument zadán nebo pokud text obsahuje méně znaků, než určuje hodnota argumentu délka (včetně znaku na pozici začátek), budou vráceny všechny znaky od pozice začátek do konce řetězce. |
Poznámky
Pokud chcete určit počet znaků v argumentu řetězec, 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 ProductID, Mid(ProductID;5) AS Expr1 FROM ProductSales; |
Vrátí hodnotu ProductID a část ProductID začínající od pozice znaku 5 a zobrazí výsledky ve sloupci Výraz1. |
SELECT ProductID, Mid(ProductID;5;4) AS testMid FROM ProductSales; |
Vrátí hodnotu ProductID a část ProductID začínající od pozice znaku 5 obsahující 4 znaky a zobrazí výsledky ve sloupci testMid. |
Příklady jazyka VBA
Poznámka: Následující příklady 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"