Trả về một Biến_thể (Chuỗi) chứa số ký tự cụ thể từ một chuỗi.
Cú pháp
Mid(string, start [, length ] )
Cú pháp hàm Mid có các đối số sau:
| Đối số | Mô tả |
|---|---|
| chuỗi | Bắt buộc. biểu thức chuỗi mà số ký tự được trả về. Nếu chuỗi chứa Null, sẽ trả về Null . |
| bắt đầu | Bắt buộc. Dài. Vị trí ký tự trong chuỗi tại đó phần bắt đầu trả về. Nếu điểm bắt đầu lớn hơn số ký tự trong chuỗi, thì hàm Mid trả về chuỗi độ dài bằng không (""). |
| length | Không bắt buộc. Biến_thể (Dài). Số ký tự muốn trả về. Nếu bị bỏ qua hoặc nếu có ít ký tự dài hơn độ dài trong văn bản (bao gồm ký tự ở đầu), thì tất cả các ký tự từ vị trí bắt đầu đến cuối chuỗi sẽ được trả về. |
Chú thích
Để xác định số ký tự trong chuỗi, hãy dùng hàm Len .
Lưu ý
Dùng hàm MidB với dữ liệu byte được chứa trong một chuỗi, như trong các ngôn ngữ dùng bộ ký tự byte kép. Thay vì xác định số ký tự, các đối số sẽ chỉ định số byte. Để xem mã mẫu sử dụng MidB, hãy xem ví dụ thứ hai trong chủ đề ví dụ.
Ví dụ về truy vấn
| Biểu thức | Kết quả |
|---|---|
| SELECT ProductID, Mid(ProductID,5) AS Expr1 FROM ProductSales; | Trả về "ProductID" và một phần của ProductID bắt đầu từ vị trí ký tự 5 và hiển thị kết quả trong cột Expr1. |
| SELECT ProductID, Mid(ProductID,5,4) AS testMid FROM ProductSales; | Trả về "ProductID" và một phần của ProductID bắt đầu từ vị trí ký tự 5, chứa 4 ký tự và hiển thị kết quả trong cột testMid. |
Ví dụ về VBA
Lưu ý
Các ví dụ về VBA sau thể hiện cách sử dụng hàm này trong mô-đun Visual Basic for Applications (VBA). Để biết thêm thông tin về cách làm việc với VBA, chọn Tham khảo dành cho Nhà phát triển trong danh sách thả xuống cạnh Tìm kiếm, rồi nhập một hoặc nhiều từ vào hộp tìm kiếm.
Ví dụ đầu tiên sử dụng hàm Mid để trả về số ký tự được chỉ định từ một chuỗi.
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í dụ thứ hai sử dụng MidB và một hàm do người dùng xác định (MidMbcs) cũng để trả về các ký tự từ chuỗi. Sự khác biệt ở đây là chuỗi đầu vào là ANSI và độ dài tính theo byte.
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"