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ých se znaky vrací. 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 ID_produktu, Mid(ID_produktu,5) AS Výraz1 FROM Prodej_produktů; |
Vrátí "ID_výrobku" a část ID_produktu počínaje znakovou pozicí 5 a zobrazí výsledky ve sloupci Výraz1. |
SELECT IDVýprodeje, Mid(IDVýprodeje;5;4) AS testMid FROM Prodej_produktu; |
Vrátí hodnotu "IDVý výrobek" a část IDVýznaky počínaje pozicí znaku 5, obsahující 4 znaky a výsledek zobrazí 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"