Geeft een variant (tekenreeks) als resultaat die een opgegeven aantal tekens van een tekenreeks bevat.
Syntaxis
DEEL( tekenreeks, begin [, lengte ] )
De syntaxis van de functie DEEL heeft deze argumenten:
Argument |
Beschrijving |
tekenreeks |
Vereist. De reeksexpressie waaruit tekens worden opgehaald. Als tekenreeks Null bevat, wordt Null als resultaat gegeven. |
begin |
Vereist. Long. De positie in tekenreeksvan waaraf het gedeelte moet worden genomen. Als begin groter is dan het aantal tekens in tekenreeks, wordt door DEEL een tekenreeks met een lengte van nul ("") als resultaat gegeven. |
lengte |
Optioneel. Variant (Lang). Het aantal tekens dat als resultaat moet worden gegeven. Als u dit weglaat of als er minder dan lengte tekens in de tekst zijn (inclusief het teken op begin), worden alle tekens vanaf de positie van begin tot aan het einde van de tekenreeks als resultaat gegeven. |
Opmerkingen
Als u het aantal tekens in tekenreeks wilt bepalen, gebruikt u de functie Lengte.
Opmerking: Gebruik de functie DEELB met bytegegevens in een tekenreeks, zoals in talen met een double-byte tekenset. In plaats van het aantal tekens op te geven, geven de argumenten het aantal bytes op. Zie het tweede voorbeeld in het onderwerp Voorbeeld voor een voorbeeld van code waarin DEELB wordt gebruikt.
Queryvoorbeelden
Expression |
Resultaten |
SELECT ProductID, DEEL(ProductID,5) AS Expr1 FROM ProductSales; |
Retourneert de 'ProductID' en het deel van ProductID vanaf tekenpositie 5 en geeft de resultaten weer in de kolom Expr1. |
SELECT ProductID, DEEL(ProductID,5,4) AS testDEEL FROM ProductSales; |
Retourneert de 'ProductID' en het deel van ProductID vanaf tekenpositie 5, met 4 tekens en geeft de resultaten weer in de kolom testDEEL. |
VBA-voorbeelden
Opmerking: In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht. Meer informatie over het werken met VBA vindt u door in de vervolgkeuzelijst naast Zoeken de optie Referentie voor ontwikkelaars te selecteren en een of meer termen in het zoekvenster te typen.
In het eerste voorbeeld wordt de functie DEEL gebruikt om een opgegeven aantal tekens op te halen uit een tekenreeks.
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".
In het tweede voorbeeld worden DEELB en een door de gebruiker gedefinieerde functie (DEELMbcs) gebruikt om ook tekens op te halen uit een tekenreeks. Het verschil hier is dat de ingevoerde tekenreeks bestaat uit ANSI-tekens en dat de lengte wordt uitgedrukt in bytes.
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"