任何人都觉得EXCEL VBA中的Gematria数字挑战?

时间:2018-02-06 09:59:31

标签: excel vba excel-vba

解释:我在EXCEL并且在VBA中需要一个天才公式,其中字母表中的每个字母(j除外)都被赋予一个SPECIFIC数值(如下所列),以便在一个单元格中键入LETTERS ,数值的和出现在它旁边的单元格中。

a=1     b=2     c=600   d=4     e=5     f=500   g=3   h=8    i=10
k=20    l=30    m=40    n=50    o=70    p=80    q=9   r=100  s=200
t=300   u=400   v=200   w=800   x=60    y=700   z=7 

(注意:它也应该适用于CAPS,空格应该为零)

例如:如果我在单元格A1中键入单词lady asks help,则值1279应出现在单元格B1中 (看到l = 30,a = 1,d = 4,y = 700,a = 1,s = 200,k = 20,s = 200,h = 8,e = 5,l = 30,p = 80 )

相同的公式应适用于A列和B列的其余部分。 如果它很重要,我需要希腊Gematria。当我在键盘上键入“abc”时,希腊字母“αβχ”出现在屏幕上(使用Tyndale House键盘代码)。每个希腊字母都有一个设定的数值,确认希腊圣经文本中的数字模式。 我找到了使用希腊语Gematria(例如DAVAR4)的固定程序,但没有一个是可编辑的文本,我不知道如何进入他们的“大脑”将其转移到EXCEL。坦率地说,在编程时我真的很无能为力,甚至不知道我问的是否可能。本地程序员将我推荐给Stack Overflow,因此非常感谢任何帮助或指令! 我看着这个问题&回答,2014年7月7日问data_garden,但是唉,我是个假人! 如果需要更多信息,请说明。感谢

1 个答案:

答案 0 :(得分:0)

你很幸运。由于您没有明确的努力自己编写代码,因此有关于此的投票将被关闭。我最近自己写了类似的东西,所以所需要的就是用你的评分系统替换数组,它位于下面:

Function gem(txt As String) As Long
    gem = 0
    Dim i As Long, c As Integer
    Dim arr()
    arr = Array(0, 1, 2, 600, 4, 5, 500, 3, 8, 10, 0, 20, 30, 40, 50, 70, 80, 9, 100, 200, 300, 400, 200, 800, 60, 700, 7)
    For i = 1 To Len(txt)
        c = Asc(Mid(UCase(txt), i, 1)) - 64
        If c > 0 And c <= 26 Then gem = gem + arr(c)
    Next
End Function