Excel特殊格式自动填充输入问题,真正高手进。复制粘贴者自重。
要求在“一列”单元格中做到:输入23025.422,可以自动显示为230*25.4*22输入2302522,可以自动显示为230*25*22输入23025.422+2,可...
要求在“一列”单元格中做到:
输入23025.422 ,可以自动显示为 230*25.4*22
输入2302522,可以自动显示为 230*25*22
输入23025.422+2,可以自动显示为 230*25.4*22+2
输入2302522+2,可以自动显示为 230*25*22+2
注意:
单元格中数据不参与数据运算,只要求显示结果如上述所示。
解决方法优先使用自定义单元格方法,vb也行。
其中1、2点必须做到,如嫌麻烦3、4点可忽略。
拜托不要复制粘贴,水经验有什么意思呢?
完美解决问题必加悬赏!
对于自定义格式的方法,有没有办法在同一列中使用多种格式? 展开
输入23025.422 ,可以自动显示为 230*25.4*22
输入2302522,可以自动显示为 230*25*22
输入23025.422+2,可以自动显示为 230*25.4*22+2
输入2302522+2,可以自动显示为 230*25*22+2
注意:
单元格中数据不参与数据运算,只要求显示结果如上述所示。
解决方法优先使用自定义单元格方法,vb也行。
其中1、2点必须做到,如嫌麻烦3、4点可忽略。
拜托不要复制粘贴,水经验有什么意思呢?
完美解决问题必加悬赏!
对于自定义格式的方法,有没有办法在同一列中使用多种格式? 展开
4个回答
展开全部
Private Sub Worksheet_Change(ByVal Target As Range)
TG = Target
If InStr(TG, "+") Then GoTo 1
'------------------------------------------------------------
X = Left(TG, 3): Z = Right(TG, 2): Y = Mid(TG, 4, Len(TG) - 5)
Application.EnableEvents = 0
Target = X & "*" & Y & "*" & Z
Application.EnableEvents = 1
Exit Sub
'-------------------------------------------------------------
1:
A = Split(TG, "+")
For I = 0 To UBound(A)
If Len(A(I)) > 5 Then
X = Left(A(I), 3): Z = Right(A(I), 2): Y = Mid(A(I), 4, Len(A(I)) - 5)
B = X & "*" & Y & "*" & Z
Else
B = B & "+" & A(I)
End If
Next
Application.EnableEvents = 0
Target = B
Application.EnableEvents = 1
End Sub
更多追问追答
追问
谢谢!但是已有更简便的解决办法了。
追答
帖主又说只能 [解决方法优先使用自定义单元格方法,vb也行]
但是选择了辅助单元格的公式法,实在不知道该说什么了……
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用公式:
=IF(ISNUMBER(FIND(".",A1)),LEFT(A1,3)&"*"&MID(A1,4,4)&"*"&MID(IF(ISNUMBER(--A1),TEXT(A1,"0.000"),A1),8,4),LEFT(A1,3)&"*"&MID(A1,4,2)&"*"&MID(A1,6,4))
下拉。
=IF(ISNUMBER(FIND(".",A1)),LEFT(A1,3)&"*"&MID(A1,4,4)&"*"&MID(IF(ISNUMBER(--A1),TEXT(A1,"0.000"),A1),8,4),LEFT(A1,3)&"*"&MID(A1,4,2)&"*"&MID(A1,6,4))
下拉。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
其中1、2 数字自定义格式 : [>=1000000]0!*00!*00;0!*00.0!*00
追问
顶!虽然没有采纳,还是要感谢您!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询