在excel中,如果A1是1则B1的数字类型是两位小数的数值,如果A1是2则B1是整数,如果A1是3则B1是一位小数。

简单的说就是,能不能根据指定单元格的数值,返回当前单元格不同的数字类型。例如A列内填的学生姓名,B列内填入的是学生参加体质健康检测的项目代码,C列是该检测项目的成绩。若B... 简单的说就是,能不能根据指定单元格的数值,返回当前单元格不同的数字类型。例如A列内填的学生姓名,B列内填入的是学生参加体质健康检测的项目代码,C列是该检测项目的成绩。若B2是代码18,表示的是实心球项目,则C2填入的数值要求是一位小数如6.8(单位:米);若B3是代码21,表示跳绳,则C3中输入的只能是整数如203(单位:次/分钟)。 展开
 我来答
enjoyllonely
2011-11-27 · TA获得超过2.5万个赞
知道大有可为答主
回答量:1.3万
采纳率:60%
帮助的人:7171万
展开全部
选中C列,即,点C这个列标
然后,菜单,数据,有效性,允许“自定义”
公式为
=IF(B1=18,INT(C1)<>C1,INT(C1)=C1)
确定,这样实现的是B列输入18时,你只能输入一个小数,如果输入的是其他数,就只能输入一个整数
至于你题目本身的要求,有效性公式为
=IF(B1=1,LEN((C1-INT(C1)))=4,IF(B1=2,INT(C1)=C1,LEN((C1-INT(C1)))=3))
Zipall
2011-11-27 · TA获得超过1.3万个赞
知道大有可为答主
回答量:8104
采纳率:42%
帮助的人:8471万
展开全部
这个恐怕只能用vba完成.
右击工作表标签>查看代码>粘贴下面的代码>
可实现在B列填入代码后,C列单元格公式做相应调整.

Private Sub Worksheet_Change(ByVal Target As Range)
With Target.Cells(1)
If .Column = 2 And .Row > 1 And Len(.Value) > 0 Then
Select Case .Value
Case 18
.Offset(0, 1).NumberFormatLocal = "0.0米"
Case 21
.Offset(0, 1).NumberFormatLocal = "0次!/分钟"
Case Else
MsgBox "没有该项目代码,请检查后重新输入!"
Application.Undo
End Select
End If
End With
End Sub

btw:注意要在工具>选项>重新计算>勾选:以显示精度为准
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式