Chinaunix首页 | 论坛 | 博客
  • 博客访问: 153739
  • 博文数量: 37
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 250
  • 用 户 组: 普通用户
  • 注册时间: 2013-04-17 15:56
个人简介

南风有翼 夜景阑珊

文章分类

全部博文(37)

文章存档

2015年(1)

2014年(30)

2013年(6)

分类: IT职场

2014-12-12 13:01:04

  有时候在编辑excel时,出现了一些不想要的字符,如想删除掉文字前的'1、'、'2、'、'3、'... ...
  逐个删除或替换比较麻烦,此时可使用vba
  我现在用的office 2013,可以打开excel后按alt+f11按钮,然后会弹出vba窗口,双击需要编辑的sheet表(如sheet1),
  然后在空白界面输入代码并运行即可。
  代码如下:
  1. Sub th()
  2.     Cells.Replace What:="1、", Replacement:=""
  3.     Cells.Replace What:="2、", Replacement:=""
  4.     Cells.Replace What:="3、", Replacement:=""
  5. End Sub
  
     这种方法对于替换字符量小的时候可以用,保存后可以多次利用,但字符多时效率就很低了,如要替换'1、~100、'
    或多个字符'!@#¥%……&*()'等
    此时可使用循环语句:
  1. Sub del() '定义del函数
  2.     For x = 1 To 11 'x是1到11的变量
  3.         txt = Mid("1234567890、", x, 1) 'txt是从字符串"1234567890、"中第x个字符开始取的1个字符                              
  4.        Cells.Replace What:=txt, Replacement:="" '单元格替换函数从what替换到replacement
  5.     Next x 'x循环
  6. End Sub
'Mid(str,x,y):str:要截取的字符串 x:从第几位开始 y:截取几个字符
执行上面的程序就能把'1、2、3、~100、'这些字符去掉了,同样的方法也能替换'!@#¥%……&*()'等字符。

    
阅读(1452) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~