VBA 字符串相加替换

如 字符串 0010 1000 拼接结果为 1010 。
0010 1010 拼接结果为 1010 。 相同位置的相同数字不变化 如果是0和1的话改成1 字符长度4位就可以

 1.ALT+F11打开VBE编辑器,单击菜单:工具-引用。

 2.弹出引用-VBAProject对话框,勾选Microsoft VBScript Regular EXpressions 1.0,点确定。

 3.新建一个模块,输入如下代码:

Sub tsszstrqh()

Dim reg As New RegExp

Dim str As String, t, s, arr

str = Range("a1").Value

With reg

 .Global = True

 .Pattern = "[^0-9.]"

 arr = "=" & Right(.Replace(str, "+"), Len(.Replace(str, "+")) - 1)

 .Pattern = "\++"

 Range("b1") = .Replace(arr, "+")

End With

End Sub


 4.按ALT+F8,运行tsszstrqh宏,演示结果如下图:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-01
Sub test()
Dim A, B As String
A = "0010"
B = "1010"
C = FC(A, B)
MsgBox "结果为:" & C
End Sub
Function FC(str1, str2) As String
If Len(str1) = Len(str2) Then
    For i = 1 To Len(str1)
        s1 = Mid(str1, i, 1)
        s2 = Mid(str2, i, 1)
        If s1 = s2 Then
            FC = FC & s1
        Else
            FC = FC & "1"
        End If
    Next
End If
End Function

本回答被提问者采纳
第2个回答  2015-10-19
VBA 字符串相加替换,可以这样:
【1】可以使用以下代码:
Sub test()
Dim A, B As String
A = "0010"
B = "1010"
C = FC(A, B)
End Sub
Function FC(str1, str2) As String
If Len(str1) = Len(str2) Then
For i = 1 To Len(str1)
s2 = Mid(str2, i, 1)
If <a href= target="_blank" class="baidu-highlight">s1</a> = s2 Then
FC = FC & <a href=target="_blank" class="baidu-highlight">s1</a>
Else
FC = FC & "1"
End If
Next
End If
End Function
【2】CELLS(3,3)= CELLS(1,1) & CELLS(2,2)
【3】Sub test()
Dim sr$, arr, <a href= target="_blank" class="baidu-highlight">sr1</a>$, sr2$
sr = [F65536].<a href= target="_blank" class="baidu-highlight">End</a>(3).Value
arr = Split(sr, "\")
For i = 0 To UBound(arr)
If arr(i) = 0 Then arr(i) = 10
sr2 = <a href= target="_blank" class="baidu-highlight">Abs</a>(arr(i) - [b65536].<a href= target="_blank" class="baidu-highlight">End</a>(3).Value)
If sr2 = 10 Then sr2 = 0
<a href= target="_blank" class="baidu-highlight">sr1</a> = <a href= target="_blank" class="baidu-highlight">sr1</a> & sr2 & "\"
<a href=target="_blank" class="baidu-highlight">Next</a>
[F65536].<a href= target="_blank" class="baidu-highlight">End</a>(3).Offset(1, 0) = <a href= target="_blank" class="baidu-highlight">Left</a>(sr1, Len(sr1) - 1)
End Sub

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网