转换为ASCII文本(Microsoft Excel)
Brenda有很多信息已导入或粘贴到工作表中。有时工作表中的文本将包含“外国”
和奇怪的角色。她想知道是否有一种方法可以轻松地转换数据,使其不包含非ASCII字符,并且也许某些外来字符会转换为常规ASCII值(例如将重音字母转换为非重音字母)。
您可以尝试几种方法。首先,您可以使用CLEAN工作表功能来摆脱不可打印的字符。只需以这种方式使用该函数:
=CLEAN(A1)
结果是“清除”的文本,没有不可打印的文本。如果要用常规ASCII字符替换外来字符,则需要使用宏来完成。这是一个相对简单的方法的示例:
Sub StripAccent() Dim sAcc As String Dim sReg As String Dim sA As String Dim sR As String Dim i As Integer sAcc = "ŠŽšžŸÀÁÂÃÄ�...ÇÈÉÊËÌÍÎÏÐ�'�'�"�"ÕÖÙÚÛÜÝàáâãäåçè��©êëìí��®ïðñòóôõöùúûüýÿ" sReg = "SZszYAAAAAACEEEEIIIIDNOOOOOUUUUYaaaaaaceeeeiiiidnooooouuuuyy" For i = 1 To Len(sAcc) sA = Mid(sAcc, i, 1) sR = Mid(sReg, i, 1) Selection.Replace What:=sA, Replacement:=sR, _ LookAt:=xlPart, MatchCase:=True Next End Sub
宏逐步浏览sAcc变量中的字符,然后一次使用“查找和替换”将它们替换为sReg变量中的相应字符。您可以调整sAcc和sReg的内容以反映您的转换需求。关键是要确保它们的长度相同。
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(11493)适用于Microsoft Excel 2007、2010、2013和2016。您可以在此处为Excel的较旧菜单界面找到此技巧的版本:
链接:/ excel-Converting_to_ASCII_Text [转换为ASCII文本]。