STXTB
Renvoie un nombre spécifié de caractères d'une chaîne, à partir d'une position en octets. Chaque caractère double-octet (DBCS) compte pour 2 octets ; chaque simple-octet compte pour 1.
STXTB(texte; no_départ; nombre_octets)Arguments
texteLe texte d'où extraire la sous-chaîne.no_départLa position en octets du premier octet à extraire (commence à 1).nombre_octetsLe nombre d'octets à renvoyer.
=STXTB("Excel";2;3)Renvoie 3 octets à partir du 2e
=STXTB("日本語";3;2)Démarre à l'octet 3, renvoie 2 octets (un caractère DBCS)
=STXTB("AB日本";3;2)Démarre à l'octet 3, renvoie 2 octets (un caractère DBCS)
- •Sans support DBCS, STXTB se comporte comme STXT
- •Utilisez STXT pour extraire par position en caractères au lieu d'octets
- •Surtout utilisée dans les installations Excel est-asiatiques
- •Utiliser STXTB alors que STXT (extraction basée sur les caractères) est en réalité ce qu'il faut - STXTB compte les octets à la fois pour no_départ et num_octets, donc des valeurs qui semblent correctes en position de caractère peuvent tomber au milieu d'un caractère double octet
- •Compter no_départ comme un indice de caractère plutôt qu'un indice d'octet, ce qui produit un décalage ou un résultat corrompu dès que le texte contient des caractères double octet avant la position cible
- •Oublier que sur les systèmes sans prise en charge des jeux de caractères double octet, STXTB se comporte simplement comme STXT, donc tester sur une machine en locale occidentale peut masquer des bogues qui n'apparaissent qu'avec du texte est-asiatique
STXTExtrait par position et nombre de caractères plutôt que par position et nombre d'octets, le bon choix pour du texte qui n'a pas besoin d'une gestion sensible au double octet.GAUCHEBUn cas particulier de la même extraction basée sur les octets que STXTB, commençant toujours au premier octet.DROITEBUn autre cas particulier d'extraction basée sur les octets, comptant toujours depuis la fin de la chaîne plutôt qu'une position de départ spécifique.Pourquoi STXTB a-t-elle renvoyé un caractère corrompu ou inattendu ?
no_départ ou num_octets se situait probablement au milieu d'un caractère double octet - chaque caractère de ce type occupant 2 octets, des positions d'octet qui ne s'alignent pas sur les limites de caractères produisent des résultats corrompus.
Dois-je utiliser STXT ou STXTB ?
Utilisez STXT pour une extraction ordinaire basée sur les caractères. Réservez STXTB aux cas où vous avez spécifiquement besoin d'un positionnement basé sur les octets, comme la correspondance avec les limites de stockage d'un système hérité pour du texte est-asiatique.
STXTB fonctionne-t-elle comme STXT sur un système sans prise en charge linguistique double octet ?
Oui, dans ce cas il n'y a aucune distinction entre caractères et octets, donc STXTB et STXT renvoient des résultats identiques.
Besoin de traduire une formule utilisant STXTB ?
Utilisez notre traducteur pour convertir votre formule complète
