Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 用于转换全名的Excel下拉列表&;输入缩写_Vba_Excel - Fatal编程技术网

Vba 用于转换全名的Excel下拉列表&;输入缩写

Vba 用于转换全名的Excel下拉列表&;输入缩写,vba,excel,Vba,Excel,我有一个叫做加班的数据库,还有一张叫做数据的表。在第一页中,我使用数据验证来访问数据页上的数据列表。目前名单上有人的全名。我想做的是,当一个名字被选中时,它会从数据表中将其更改为首字母。不确定这是否可以在一个单元格中完成,或者使用类似Vlookup的方法在相邻单元格中输入首字母。名称和首字母在数据页的同一行中(在“I”和“J”列中)。在主数据库上,验证列表用于列“O”。我有一列“P”准备放在公式中,以显示首字母,如果这是唯一可以做到的方法。在数据表中有数据,如: 在P1中输入: =IF(OR(

我有一个叫做加班的数据库,还有一张叫做数据的表。在第一页中,我使用数据验证来访问数据页上的数据列表。目前名单上有人的全名。我想做的是,当一个名字被选中时,它会从数据表中将其更改为首字母。不确定这是否可以在一个单元格中完成,或者使用类似Vlookup的方法在相邻单元格中输入首字母。名称和首字母在数据页的同一行中(在“I”和“J”列中)。在主数据库上,验证列表用于列“O”。我有一列“P”准备放在公式中,以显示首字母,如果这是唯一可以做到的方法。

数据表中有数据,如:

P1中输入:

=IF(OR(O1="",NOT(ISNUMBER(MATCH(O1,Data!I:I,0)))),"",VLOOKUP(O1,Data!I:J,2,FALSE))

并向下复制。

数据
表中包含数据,如:

P1中输入:

=IF(OR(O1="",NOT(ISNUMBER(MATCH(O1,Data!I:I,0)))),"",VLOOKUP(O1,Data!I:J,2,FALSE))

然后向下复制。

使用vlooklup或索引/匹配对。使用vlooklup或索引/匹配对。感谢@Gary的学生提供的公式,它只适用于一个小故障。它将首字母放在下一行!所以达斯·维德的名字在细胞O2中,但最初的DV在P3中。你能告诉我需要做什么才能让它在同一条线上工作吗?@IanMartin非常奇怪!!。。。。。。。。。。。。。我假设数据和表格都以第1行开始…………可能需要调整…………刚刚发现需要更改的内容。只需将Vlookup设置为从2号线开始,即可正常工作!感谢@Gary的学生提供的公式,它只存在一个小问题。它将首字母放在下一行!所以达斯·维德的名字在细胞O2中,但最初的DV在P3中。你能告诉我需要做什么才能让它在同一条线上工作吗?@IanMartin非常奇怪!!。。。。。。。。。。。。。我假设数据和表格都以第1行开始…………可能需要调整…………刚刚发现需要更改的内容。只需将Vlookup设置为从2号线开始,即可正常工作!