在Excel 中如何把A列的四位数变成B列的五位数,如:5546变成14133、0228变成00208.A列四位数的数据原本是B列的五位数的每相邻的两位数相加后所得,我想把它还原过来,如:A B5546 141330228 00208A列数
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/14 22:22:32
在Excel 中如何把A列的四位数变成B列的五位数,如:5546变成14133、0228变成00208.A列四位数的数据原本是B列的五位数的每相邻的两位数相加后所得,我想把它还原过来,如:A B5546 141330228 00208A列数
在Excel 中如何把A列的四位数变成B列的五位数,如:5546变成14133、0228变成00208.
A列四位数的数据原本是B列的五位数的每相邻的两位数相加后所得,我想把它还原过来,如:
A B
5546 14133
0228 00208
A列数据很多,要用公式批量生成,
在Excel 中如何把A列的四位数变成B列的五位数,如:5546变成14133、0228变成00208.A列四位数的数据原本是B列的五位数的每相邻的两位数相加后所得,我想把它还原过来,如:A B5546 141330228 00208A列数
用VBA来解决吧!首先打开菜单【工具】【宏】【安全性】设置为:低!关闭这个Excel文件,再重新打开!
鼠标右键【Sheet1】的标签,点击【属性】,在打开的代码窗口,粘贴下面的代码:
Sub ouyangff()
Dim a(4) As Integer
On Error Resume Next
For i = 1 To [A65536].End(3).Row
For j = 1 To 4
a(j) = Mid(Cells(i,1),j,1)
Next
For j = 0 To 9
n1 = j
n2 = (10 + a(1) - n1) Mod 10
n3 = (10 + a(2) - n2) Mod 10
n4 = (10 + a(3) - n3) Mod 10
n5 = (10 + a(4) - n4) Mod 10
If (n2 + n3 + n4 + n5) Mod 10 = n1 Then Cells(i,2) = n1 & n2 & n3 & n4 & n5
Next
Next
End Sub
按Alt + F11,回到Excel里,再按Alt + F8 ,执行!
这时B列就是你要的结果了!
此题还有一个地方不可思议:怎么只有15分呢?