首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表示文本字符串的数字

表示文本字符串的数字
EN

Stack Overflow用户
提问于 2014-04-03 05:56:12
回答 3查看 48关注 0票数 0

web表单收集学校乐队组织中学生的数据。表单数据被输入到google工作表,然后google工作表填充合并模板,合并后的表单通过电子邮件发送给收件人。家长需要打印、签名和上交表格。这个乐队有数百个孩子,在注册时,当表格上交时,如果你在角落里有一个短的排序编号,那么对堆叠中的所有论文进行排序会更容易……志愿者的孩子不能很好地应用字母顺序。我正在尝试创建一个公式,它将给我一个排序编号,以便在提交表单后合并到他们收到的每个PDF页面的页眉上。我希望它基于姓氏,然后名字,并能够创建该数字(在谷歌工作表)的飞行,因为合并几乎立即发生时,用户提交的表单。因此,需要excel类型的公式,该公式将产生一个表示孩子名字的数字。我希望每个数字都是唯一的,但有些名字的前几个字母是相同的,还有一些名字只有2个字符。我试过做A=10,B=11,z=35等(所以都是2位数),所以,只用前3个字符,Bob Jones = 192423112411 -很难一目了然地对论文进行排序,它也没有真正区分Bob Janes。最好是4位数。我还查看了=code()公式,它也有很长的数字。任何建议都是值得感谢的。谢谢!附注:电子表格使用什么方法对文本进行排序?他们给角色加权了还是怎么的?在我让automerge开始工作之前,我给列表中的每个孩子分配了一个高于下面的数字和低于上面的数字(在工作表上),然后进行合并。

EN

回答 3

Stack Overflow用户

发布于 2014-04-03 07:28:44

一种选择是:

  • 对名称列表进行排序,并将=TEXT(row(),"0000")公式放在合并电子表格上以生成唯一ID
  • ,使用VLOOKUP函数检索该特定名称的唯一ID。
票数 0
EN

Stack Overflow用户

发布于 2014-04-03 07:48:39

首先,那堵墙的文字很难读懂。请尝试进行一些格式化,以便试图帮助您的人可以轻松地理解您所要传达的信息。

就我个人而言,我建议使用连字符系统。姓氏的首字母转换为数字,后跟连字符,然后是名字的前两个字母转换为数字。

假设你区分大写和小写,Bob Jones变成11-1956,或者11-1924,如果你把所有东西都转换成大写,我猜这更有意义。

您可以使用此VBA函数将名称转换为如下所示的系统:

代码语言:javascript
复制
Function ConvertToIndex(strInput As String) As String
Dim strLast As String
Dim arrName() As String
Dim strFirst1 As String
Dim strFirst2 As String

arrName = Split(strInput, " ")

strLast = Mid(arrName(1), 1, 1)
strFirst1 = Mid(arrName(0), 1, 1)
strFirst2 = Mid(arrName(0), 2, 1)

ConvertToIndex = Asc(UCase(strLast)) - 55 & "-" & Asc(UCase(strFirst1)) - 55 & Asc(UCase(strFirst2)) - 55

'MsgBox ConvertToIndex

End Function
票数 0
EN

Stack Overflow用户

发布于 2014-04-05 13:53:04

感谢Tim,Nutsch和Mad Tech的回复。我很感谢你的意见。对不起,段落太长了,我太罗嗦了。由于成员在提交后立即获得合并的PDF工作表,因此我需要数字在输入时立即基于名称,而不是在事实之后;因此我正在寻找一个将驻留在工作表中的公式。不过,VBA函数也很有趣。我以后再给它们编号,也许是在床单交上来的时候。到那时,我将知道乐队中的所有人,并可以像以前一样分配号码。再次感谢!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22823895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档