Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2416|回复: 7

[已解决]改中间字串

[复制链接]
发表于 2016-6-6 17:50 | 显示全部楼层 |阅读模式
本帖最后由 10210578 于 2016-6-7 11:12 编辑

各位大大,有一段文字0x0012
只想改中间的字串变成:0x9012  或  0x1012 或  0x2012
请问要怎用VBA呈现
最佳答案
2016-6-6 19:50
试一下以下代码,你的是不是WPS?
  1. Sub xx()
  2.     Dim n&
  3.     With 工作表1
  4.         n = .Cells(.Rows.Count, 1).End(xlUp).Row
  5.         For i = 1 To n
  6.             If .Cells(i, 1) <> "" And .Cells(i, 2) <> "" Then
  7.                 .Cells(i, 1) = Application.WorksheetFunction.Replace(.Cells(i, 1), 3, 1, .Cells(i, 2))
  8.             End If
  9.         Next
  10.     End With
  11. End Sub
复制代码

123.zip

4.54 KB, 下载次数: 5

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2016-6-6 17:57 | 显示全部楼层
都是第三个数很好修改的,只是什么时候改成9?什么时候改成1?
回复

使用道具 举报

发表于 2016-6-6 18:10 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2016-6-6 19:25 | 显示全部楼层
请问直接修改第三个 要怎么修改

另外 Excel 第二格为多少 第一个就去修改字串
回复

使用道具 举报

发表于 2016-6-6 19:50 | 显示全部楼层    本楼为最佳答案   
试一下以下代码,你的是不是WPS?
  1. Sub xx()
  2.     Dim n&
  3.     With 工作表1
  4.         n = .Cells(.Rows.Count, 1).End(xlUp).Row
  5.         For i = 1 To n
  6.             If .Cells(i, 1) <> "" And .Cells(i, 2) <> "" Then
  7.                 .Cells(i, 1) = Application.WorksheetFunction.Replace(.Cells(i, 1), 3, 1, .Cells(i, 2))
  8.             End If
  9.         Next
  10.     End With
  11. End Sub
复制代码
回复

使用道具 举报

发表于 2016-6-6 19:55 | 显示全部楼层
本帖最后由 02761752696 于 2016-6-6 19:58 编辑
10210578 发表于 2016-6-6 19:25
请问直接修改第三个 要怎么修改

另外 Excel 第二格为多少 第一个就去修改字串

方法有很多,这是公式
=REPLACE($A$1,3,1,B1)
QQ截图20160606194622.png

123.zip

7.65 KB, 下载次数: 7

回复

使用道具 举报

 楼主| 发表于 2016-6-7 10:21 | 显示全部楼层
谢谢各位大大 那公式是我想要的结果 可是VBA要怎么写
回复

使用道具 举报

 楼主| 发表于 2016-6-7 11:11 | 显示全部楼层
已经解决了 谢谢各位
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-29 17:25 , Processed in 0.641220 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表