如何使用Excel函数来测定数据串个数并且补位?

来源:百度知道 编辑:UC知道 时间:2024/06/15 05:16:10
我是个菜鸟,手头有个问题?不知道怎么处理,希望能用Excel函数得到解答?具体问题是:我有一个财务表,上面有三类数据,全是数字字符,长度分别为11位,9位和7位!任务是判断长度,要是11位就不变,要是9位在后面加2个0,要是7位则加4个0!请问怎么书写这个函数,怎么加0?望得到详细解答!谢谢!

设原数在A2格,则可在B2格设公式(均为常规型数据):

=IF(LEN(A2)=7,A2*10000,IF(LEN(A2)=9,A2*100,IF(LEN(A2)=11,A2,"?")))

再将该格公式向下填充

if len(k)=11 then goto AA
for i = 1 to ( 11 - len(k) )
k = "0" & k
next i
AA:

k就是那个你要检查的加不加0的字符串~~~

我只是给了你思路,其实我不会VBA,我只是用我会的VB来写的主要内容,至于套进VBA就看你的了

可以用VBA来实现,循环判断一下当前的工作表,位数不对的就补0。
如:在当前工作表中建立一个宏,代码如下:
Sub setValue()
Dim i As Integer
Dim intCount As Integer
Dim oSheet As Worksheet
Dim strTemp As String

'// 取得当前活动的工作表
Set oSheet = ActiveSheet
'// 取得当前使用的区域的行数
intCount = oSheet.UsedRange.Rows.Cells.Count

'// 循环设置当前不足11位的值,不足11位自动补0
For i = 1 To intCount
'// 假设需要补0的数据都在 A 列
strTemp = oSheet.Range("A" & i).Text
oSheet.Range("A" & i).Value = Left$(strTemp & "00000000000", 11)
Next