Kapag kumopya ka o nag-import ng text data sa isang Excel worksheet, ang spreadsheet ay paminsan-minsan ay nagpapanatili ng mga karagdagang espasyo bilang karagdagan sa nilalaman na iyong ipinasok. Karaniwan, ang TRIM() function na mag-isa ay maaaring mag-alis ng mga hindi gustong puwang na ito kung nangyari man ang mga ito sa pagitan ng mga salita o sa simula o dulo ng isang text string. Sa ilang partikular na sitwasyon, gayunpaman, hindi magagawa ng TRIM() ang trabaho.
Sa isang computer, ang isang puwang sa pagitan ng mga salita ay hindi isang blangkong bahagi kundi isang character - at mayroong higit sa isang uri ng space character. Isang space character na karaniwang ginagamit sa mga Web page na hindi aalisin ng TRIM() ay ang non-breaking space.
Kung nag-import o nakopya ka ng data mula sa mga Web page ay maaaring hindi mo maalis ang mga dagdag na espasyo sa TRIM() function kung ang mga ito ay nilikha ng mga hindi nasisira na espasyo.
Non-Breaking at Regular Spaces
Ang Spaces ay mga character at ang bawat character ay nire-reference ng value ng ASCII code nito. Ang ASCII ay kumakatawan sa American Standard Code for Information Interchange - isang internasyonal na pamantayan para sa mga text character sa mga computer operating environment na lumilikha ng isang hanay ng mga code para sa 255 iba't ibang character at simbolo na ginagamit sa mga computer program.
Ang ASCII code para sa hindi nasisira na espasyo ay 160. Ang ASCII code para sa isang regular na espasyo ay 32.
Maaalis lang ng TRIM() function ang mga puwang na may ASCII code na 32.
Sinusuportahan ng iba't ibang typestyle ang iba't ibang hanay ng mga ASCII code. Ang karaniwang talahanayan ay nag-aalok ng 127 posibleng mga halaga; ang mga typeface ay dapat na kaunting sumusuporta sa isang 127-character na mapa ng ASCII upang maituring na wasto. Ngunit ang "pinalawak" na mga ASCII na character, na tinatawag na may mga karagdagang code, ay madalas na nagdaragdag ng mga karagdagang character sa iyong mga paboritong font. Sa katunayan, ang hindi nasisira na espasyo ay, mismo, isang pinahabang ASCII na character, samantalang ang isang karaniwang espasyo ay … mabuti, karaniwan.
Pag-alis ng Mga Hindi Nasisira na Space
Alisin ang mga hindi puwang na puwang mula sa isang linya ng text gamit ang TRIM(), SUBSTITUTE(), at CHAR() function.
Dahil ang SUBSTITUTE() at CHAR() function ay naka-nest sa loob ng TRIM() function, ang formula ay dapat na i-type sa worksheet sa halip na gamitin ang mga dialog box ng mga function upang ilagay ang mga argumento.
Ang formula, kung ipagpalagay na nasa cell A1 ang data na may mga non-breaking space, ay:
Paano Gumagana ang Formula
Ang bawat nested function ay gumaganap ng isang partikular na gawain:
- Isinasaad ng CHAR function ang mga nauugnay na ASCII code para sa dalawang magkaibang espasyo sa formula - 160 at 32
- Pinapalitan o pinapalitan ng SUBSTITUTE function ang lahat ng hindi puwang sa pagitan ng mga salita na may regular na espasyo
- Tinatanggal ng TRIM function ang mga sobrang regular na puwang sa pagitan ng mga salita upang normal na lumabas ang statement sa worksheet
Dahil sa lohika ng order-of-operations ng mga formula ng Excel, tinatawag ng formula ang SUBSTITUTE() function at sinasabi nitong palitan ang bawat paglitaw ng CHAR(160) - ang non-breaking space - na may karaniwang espasyo, CHAR (32), na nilalaman sa loob ng cell A1. Pagkatapos, inaalis ng TRIM() function ang mga karaniwang espasyo mula sa pinalit na string.
Mga Pagsasaalang-alang
Kung hindi magawa ng TRIM() ang trabaho, maaari kang magkaroon ng mga problema maliban sa mga hindi nasisira na espasyo, lalo na kung nagtatrabaho ka sa orihinal na pinagmumulan ng materyal na nai-render sa HTML. Kapag na-paste mo ang materyal sa Excel, i-paste ito bilang plain text upang alisin ang pag-format sa background mula sa string at alisin ang espesyal na pag-format tulad ng mga character na na-render bilang white-on-white - na mukhang isang espasyo, ngunit hindi. Suriin din, para sa mga naka-embed na tab, na maaaring palitan gamit ang parehong formula tulad ng nasa itaas, ngunit palitan ang ASCII code 160 ng 9.
SUBSTITUTE() ay kapaki-pakinabang para sa pagpapalit ng anumang ASCII code ng anumang iba pa.