仅保留工作簿中所有单元格的字母数字值

我有一个Excel工作簿多张,我只想保留AZ,0-9和“。”。 在工作簿的每个工作表中的所有单元格中。

我想到使用以下内容:

Function AlphaNumericOnly(strSource As String) As String Dim i As Integer Dim strResult As String For i = 1 To Len(strSource) Select Case Asc(Mid(strSource, i, 1)) Case 48 To 57, 65 To 90, 97 To 122: 'include 32 if you want to include space strResult = strResult & Mid(strSource, i, 1) End Select Next AlphaNumericOnly = strResult End Function 

但是运行这个函数只会产生#NAME? 在Excel中

另外,我希望Excel可以自动导航到新的工作表,并为固定范围的数据做同样的工作。

有人能帮我一下吗。

提前致谢

PS:使用Mac office 2016,工作簿有30张

#NAME错误来自Excel无法识别自定义function。 如果你确定它没有拼写错误,那么下一个最可能的问题就是它被放在了错误的地方。

用户定义函数(aka UDF)被放置到标准模块代码表中。 点击Alt + F11 ,当VBE打开时,立即使用下拉菜单来插入►模块Alt + IM )。 将function代码粘贴到名为Book1 – Module1(Code)的新模块代码表中。 点击Alt + Q返回到您的工作表。

udf_placement