excel剔除空格_excel删除空格

在使用EXCEL的VLOOKUP、IF等函数过程中,有时因为单元格中存在看不见的空格或符号,导致函数应用出错。为了解决出错问题,我们需要去除看不见的空格和符号。下面是本人根据工作实践总结的去除看不见的空格和符号的几种方法,及各种方法的适用场合。去除方法有用LEFT函数、MID函数、RIGHT函数、TRIM函数、SUBSTITUTE函数、CLEAN函数、REPLACE函数、替换法、分列法。

首先检查单元格有什么格式

a.直接复制单元格到空白的TXT文本

b.用快捷键Ctrl+F复制到“查找和替换”的搜索框

c.用LEN函数计算单元格字符个数

去除单元格中的空格

a.用right和len函数以及value函数,right函数是从右边开始截取指定位数字符的公式,len是求单元格的长度,value是将文本转化为数字;通过Ctrl+F确认是有几个单元格,例子里是确认只有一个空格,就用right取值:RIGHT(B3,LEN(B3)-1),这样出来的值是文本,需要转换为数字,就在用VALUE:VALUE(RIGHT(B3,LEN(B3)-1))

b. TRIM函数的语法格式及实例 =trim(text),用来删除字符串前后的空格,但是会在字符串中间保留一个作为连接用途。实例解说如图

去单元格内所有空格非打印字符,不可见符号

1.使用value函数和clean函数,clean函数是删除文本中所有非打印字符,如空格、引号等打印出来不可见的字符。公式:CLEAN(B3),再转化为数字:VALUE(CLEAN(B3))

2.适用于单列比较方便,复制到TXT,用查找替换把空格和符号删除掉,再复制回表格中

3.使用SUBSTITUTE函数

=substitute(text,old_text,new_text,[instance_num])

=substitute(需要替换的文本,旧文本,新文本,第N个旧文本)

参数Instance_num ——为一数值,用来指定以 new_text (新文本)替换第几次出现的 old_text(旧文本)。

参数Instance_num 可省略,这表示用 new_text(新文本)替换掉所有的old_text(旧文本)。

4.使用LEFT、RLGHT、MID函数

LEFT、RIGHT、MID函数语法格式及实例

=LEFT(text, [num_chars]),其中text为要取得给定值的文本数据源,num_chars表示需要从左开始算提取几个字符数,其中每个字符按1计数。

RIGHT函数语法

=RIGHT(text,[num_chars]),其中text为要取得给定值的文本数据源,num_chars表示需要从右开始算提取几个字符数,其中每个字符按1计数。

MID函数语法

=MID(text, start_num, num_chars),其中text为要取得给定值的文本数据源, start_num表示指定从第几位开始提取,num_chars表示需要从指定位置开始算提取几个字符数,其中每个字符按1计数。

实列解说如图

5.使用函数REPLACE

=Replace(old_text,start_num,num_chars,new_text)

=replace(要替换的字符串,开始位置,替换个数,新的文本)从指定位置开始算提取几个字符数,其中每个字符按1计数。

6.用分列法

在要分列的F列的后面插入空白列(按需要插入列数,最好多一些,以免分列后的数据覆盖原有的其它列),选中要分列的列,选择菜单栏的“数据”,在下拉菜单中选择“分列”。在弹出窗口中选择”分隔符号“点“下一步”在弹出新窗口中把所有分隔符都复选上,把“连续分隔符号视为单个处理”也选上,点“下一步”根据需要选择列数据格式,最后点击“完成”遇到分列数据不统一的要根据需要区别外理。

总结

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Python中,我们可以使用pandas库中的to_excel方法将数据保存为Excel文件。在保存数据时,需要注意一些非法字符可能会导致Excel文件无法正常打开或读取。为了避免这种情况发生,我们可以使用正则表达式来剔除非法字符,或者使用第三方库openpyxl中的方法来处理。 具体操作如下: 1. 使用正则表达式剔除非法字符 ```python import re import pandas as pd # 读取数据 df = pd.read_csv('data.csv') # 剔除非法字符 df = df.replace({'[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]':''}, regex=True) # 保存为Excel文件 df.to_excel('data.xlsx', index=False) ``` 2. 使用openpyxl中的方法处理非法字符 ```python import pandas as pd from openpyxl.utils import get_column_letter from openpyxl.utils.cell import column_index_from_string from openpyxl import Workbook # 读取数据 df = pd.read_csv('data.csv') # 创建Excel文件 wb = Workbook() ws = wb.active # 将数据写入Excel文件 for r in dataframe_to_rows(df, index=False, header=True): ws.append(r) # 处理非法字符 for col in ws.columns: col_letter = get_column_letter(col[0].column) for cell in col: if isinstance(cell.value, str) and bool(re.search(r'[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]', cell.value)): row_number = cell.row col_index = column_index_from_string(col_letter) new_cell_value = re.sub(r'[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]', '', cell.value) new_cell = ws.cell(row=row_number, column=col_index, value=new_cell_value) # 保存Excel文件 wb.save('data.xlsx') ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值