发布网友 发布时间:2022-04-29 20:24
共4个回答
热心网友 时间:2022-06-22 09:16
1.将数字格式转化为文本格式:TEXT(value, format_text),参数含义:
value 数值(可以是对包含数值的单元格的引用);ormat_text (注:使用双引号括起来作为文本字符串的数字格式,例如, "#,##0.00"
如有下表,F列中都是文本格式分数,现在要将这些分数转化为文本格式:
2.鼠标点到H2单元格输入函数“=TEXT(F2,"###")”点击enter。
3.这种格式在Excel表格中是可以复制引用的,所以用这种方法可以对表格中格式进行批量处理。
4.通过这种方法可以再format_text中输入想要的对应格式。
5.同样可以用函数将文本格式转化为数字格式。可用VALUE(text),VALUE函数只有一个参数text,表示需要转换成数值格式的文本。text参数可以用双引号直接引用文本,也可以引用其他单元格中的文本。如将下图中文本格式生日转化为数值格式。
6.如将C2单元格的文本可是日期转化为数值格式存在D2单元格,可以将鼠标点击C2单元格输入“=VALUE(C2)”后回车。这种格式同样可以复制。
热心网友 时间:2022-06-22 09:17
亲,这个有点复杂,还涉及到您输入的先后顺序,例如是白菜猪肉、还是猪肉白菜……
用VBA合适一些。
按ALT+F11打开VBA编辑窗口,按下图粘贴代码:
附件范例也已经上传了,供亲参考。
Private Sub Worksheet_Change(ByVal Target As Range)
追答
兄台所言极是,小弟已修订代码,见附件。
Private Sub Worksheet_Change(ByVal Target As Range)热心网友 时间:2022-06-22 09:17
D2数组公式,按三键 CTRL+SHIFT+回车 结束。
=IF(C2="","",INDEX(B:B,MATCH(1=1,ISNUMBER(FIND(A$2:A$1000,C2)*(A$2:A$1000<>"")),)+1)&LOOKUP(1,0/(FIND(A$2:A$1000,C2)*(A$2:A$1000<>"")),B$2:B$1000))
注意,这样的局限性很大,C2要求必须是要输入两个名称,否则公式出错。
追问如果输入:白菜猪肉鱼,如何输出:2138? 输入更多的对应名称,如何输出对应的值?追答我上面的回答中已说明:
=====注意,这样的局限性很大,C2要求必须是要输入两个名称,否则公式出错。=====
如果是没有规律的,这回答中还有一网友用的VBA解决。
热心网友 时间:2022-06-22 09:18
这个要用VBA了吧。