我正在尝试通过读取自定义数字格式来规范化数据.以下单元格中的实际数据仅具有值3和33
[A1] 3 CASES [A2] 33 UNITS
显示术语"CASES"和"UNITS",因为它们是与每个单元格不同的自定义格式的一部分.例如A1具有自定义数字格式代码:#"CASES",A2具有自定义数字格式代码:#"UNITS"
我想通过excel公式将这些数据标准化为UNITS以用于报告目的.我试图使用这个公式
=CELL("format",A1)
但返回的值是F0而不是:#"CASES"
如果每个CASE有5个单元,我希望有一个额外的列来计算NORMALIZED UNITS,其公式如下:
=IF(CELL("format",A1)="CASES",5*A1,A1)
这样,B列中的NORMALIZED UNITS就是
[B1] 15 [B2] 33
gtwebb.. 5
您可以使用自定义功能.
Function get_format(r As Range) As String get_format = r.NumberFormat End Function
然后用
=if(get_format(a1)="# " & CHAR(34) & "CASE" & CHAR(34),5,*A1,1)
或者你可以检查单词CASE是否是数字格式
Function check_case(r As Range) As Boolean check_case = InStr(1, r.NumberFormat, "CASE") End Function
=if(check_case(A1),5,*A1,1)
您可以使用自定义功能.
Function get_format(r As Range) As String get_format = r.NumberFormat End Function
然后用
=if(get_format(a1)="# " & CHAR(34) & "CASE" & CHAR(34),5,*A1,1)
或者你可以检查单词CASE是否是数字格式
Function check_case(r As Range) As Boolean check_case = InStr(1, r.NumberFormat, "CASE") End Function
=if(check_case(A1),5,*A1,1)