如何分别提取同一单元格中数字的个位、十位、百位、千位、万位,在不同单元格(无规律单元格)显示大写?

例如:

H1中的数字位数不是固定的,可能位3位数,也可能为5位数、4位数。
如果不够5位数,在数字前自动补“0”,这个“0”,也能显示在相应的单元格,以前有网友回答过,用公式=REPT(0,5-LEN(H7))&H7.,但这个补充的“0”不显示,以至于位数不是显示在相应的单元格内。这个应该用数学函数,LS的怎么都用文本函数
百位: =Mod(Int(A$1/100),10 )
十位: =Mod(Int(A$1/10),10 )
个位: =Mod(Int(A$1/1),10 )或=Mod(A$1,10)

第1个回答  2014-07-12
如果要返回的结果是数值的,用这公式:
=IF((5>=COLUMN(A1))*($H1<>""),--MID(REPT(0,5-LEN($H1))&$H1,COLUMN(A1),1),"")

高于EXCEL 2003版本的,还可以用这公式:
=IF($H1="","",IFERROR(--MID(REPT(0,5-LEN($H1))&$H1,COLUMN(A1),1),""))
相似回答