试图生成唯一的发票号码


0

我正在为我的公司制作一份“工作现场”工作簿。它最终将处理在工作结束时要上交的所有文书工作。我们给出的旧发票只是将发票总额用作“票号”,但有时会导致重复的票号。

所以我所做的是使用VBA使用以下代码提取客户名称中每个单词的第一个字母:

Function GetFirstLetters(rng As Range) As String
    Dim arr
    Dim I As Long
    arr = VBA.Split(rng, " ")
    If IsArray(arr) Then
        For I = LBound(arr) To UBound(arr)
            GetFirstLetters = GetFirstLetters & Left(arr(I), 1)
        Next I
    Else
        GetFirstLetters = Left(arr, 1)
    End If
End Function

并贴在发票总额的开头。然而,结果给我留下了小数和剩余的变化,我想省略。

enter image description here

我还没有找到一种方法来删除小数位,我甚至不确定现在单元格是否包含单词和值组合,但我认为这将是一个要问的地方。

任何帮助将不胜感激


1
所以我假设你在工作表中有一个将两者连接在一起的公式。你能用这个问题添加吗? 编辑
Scott Craner

正如下面的答案,但我已经使用了命名范围。所以 =GetFirstLetters(customer)&total 提供的两个答案都很完美。所以,谢谢你。在我的脑海里,我在想,既然它不是数字值,我就无法正确格式化。我不介意在公式本身进行格式化。
Jeremy Seifert

Answers:


2

使用INT()只得到没有小数位的数字:

=GetFirstLetters(A1)&INT(A2)

A1的名称和A2的总和。


两种方式都表现得很完美。感谢您的帮助!
Jeremy Seifert

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.