- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
按条件拆分Excel表格两个单元格中的数字
有朋友要求Excel工作表的A1单元格和B1单元格中有两个数字,这两个数字有一部分相同,现在要找出其中相同的数字并写入单元格C1,找出A1中;有而B1中没有的数字并写入单元格D1,找出B1中有而A1中没有的数字并写入单元格E1。如下面的工作表图片:我不知道给出的数字是否都是按这样的;规律,即第一个原始数据的后面几位数与第二个原始数据的前面几位数相同。如果是这个规律的话,则可以就这个具体的例子给出下面的代码来实现:;Sub SeparateNumber()
Dim strFirst As String
Dim strResult As;String
Dim StartNum As Integer
Dim EndNum As String
Di;m i As Integer, j As Integer
strFirst=lef(Range(”B1′), 1)
St;artNum=InStr(1, Range(”A1′), strFirst)
j=1
For i=StartNum To;Len(Range(”A1′))
EndNum=Mid(Range(”A1′), i, 1)
If E;ndNum=lef(Range(”B1′), j) Then
j=j + 1
End If;Next i
If j 1 Then
strResult=Mid(Range(”A1′), Start;Num, i - 1)
End If
‘单元格C1中的数据
Range(”C1′).Value=strResu;lt
‘单元格D1中的数据
Range(”D1′).Value=lef(Range(”A1′), StartNum -;1)
‘单元格E1中的数据
Range(”E1′).Value=Right(Range(”B1′), Len(Range;(”B1′)) - j)
End Sub
代码很简单,只是运用了几个VBA函数。
讨论:
其实代码可以进一步简化,因为V;BA还有一个数组函数(Split函数)。
如果要将其变为通用的,则可将上述代码转化为自定义函数,并用相对量代替代码中的硬编码。;两个单元格中的数字如果不是按上面提到的规律,则可能两个单元格中的数字中间部分相同,而其它部分不同;或者一个单元格中的数字结尾部分和另;一个单元格中的数字的中间部分相同;等等。
有兴趣的朋友可以继续研究。;医药网 /
文档评论(0)