Zwraca wartość typu wariant (ciąg) zawierającą określoną liczbę znaków z ciągu.
Składnia
Mid(string; start [, length])
W składni funkcji Mid występują następujące argumenty:
| Argumenty argumentów | Opis |
|---|---|
| ciąg | Argument wymagany. wyrażenie ciągu, z którego są zwracane znaki. Jeśli ciąg zawiera wartość Null, funkcja zwraca wartość Null . |
| Ekran startowy | Argument wymagany. Długie. Pozycja znaku w ciągu , od której zaczyna się pobierana część. Jeśli wartość parametru start jest większa niż liczba znaków w ciągu, funkcja Mid zwraca ciąg o długości zerowej (""). |
| długość | Argument opcjonalny. Wartość typu wariant (liczba długa). Liczba znaków do zwrócenia. Jeśli jest pominięta lub jeśli znaków w tekście jest mniej niż wynosi długość (włącznie ze znakiem na początku), zwracane są wszystkie znaki od pozycji początkowej do końca ciągu. |
Uwagi
Aby określić liczbę znaków w ciągu, użyj funkcji Len .
Uwaga
Funkcji FRAGMENT.TEKSTU należy używać w odniesieniu do danych bajtowych zawartych w ciągu znaków, tak jak w językach z zestawem znaków dwubajtowych. Zamiast określać liczbę znaków, argumenty określają liczbę bajtów. Aby zapoznać się z przykładowym kodem używającym funkcji MidB, zobacz drugi przykład w tym przykładzie.
Przykłady kwerend
| Wyrażenie | Rezultat |
|---|---|
| SELECT ProductID, Mid(ProductID,5) AS Wyr1 FROM ProductSales; | Zwraca wartość "ProductID" i część ProductID, począwszy od znaku na pozycji 5, a następnie wyświetla wyniki w kolumnie Wyr1. |
| SELECT ProductID, Mid(ProductID,5,4) AS testMid FROM ProductSales; | Zwraca wartość "ProductID" i część ProductID, począwszy od pozycji znaku 5 (4 znaki), a następnie wyświetla wyniki w kolumnie testMid. |
Przykłady kodu VBA
Uwaga
Poniższe przykłady języka VBA przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.
W pierwszym przykładzie użyto funkcji Mid w celu zwrócenia określonej liczby znaków z ciągu.
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".
W drugim przykładzie użyto MidB i funkcji zdefiniowanej przez użytkownika (MidMbcs), aby również zwrócić znaki z ciągu. Różnica polega na tym, że ciąg wejściowy ma format ANSI, a długość jest wyrażona w bajtach.
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"