Reporting services 有没有办法在ssrs中按字母顺序编号而不是数字编号?

Reporting services 有没有办法在ssrs中按字母顺序编号而不是数字编号?,reporting-services,ssrs-2012,Reporting Services,Ssrs 2012,我需要的(以粗体突出显示的行的字母编号(序列列)): 我曾尝试将rownumber函数的输出转换为字符串,但似乎没有任何效果,因为我没有任何想法 请帮忙 您可以使用一点自定义代码来实现这一点 转到报告属性,单击“代码”选项卡并将以下代码粘贴到自定义代码窗口中 Public Function GetRowLetter(RowNum As Integer) As String ' stick the RowNum in a variable that we can reduce until it

我需要的(以粗体突出显示的行的字母编号(序列列)):

我曾尝试将rownumber函数的输出转换为字符串,但似乎没有任何效果,因为我没有任何想法


请帮忙

您可以使用一点自定义代码来实现这一点

转到报告属性,单击“代码”选项卡并将以下代码粘贴到自定义代码窗口中

Public Function GetRowLetter(RowNum As Integer) As String

' stick the RowNum in a variable that we can reduce until it's zero

Dim r As Integer
Dim i As Integer

Dim s As String ' holds result

s = ""
r = RowNum

' we start at the right side so if the rownum is 28 we want to be back AB
' need to get 'B' first

Do While RowNum > 0

    r = Int((RowNum - 1) / 26)
    i = (RowNum - 1) Mod 26
    s = Chr(i + 65) & s

    RowNum = r
Loop

GetRowLetter = s

End Function
这将给出“A”表示1,“B”表示2等,然后给出“AA”表示27,“AB”或28等

如果要返回小写字母,请将
65
替换为
98

在报告中,将文本框值表达式设置为

=Code.GetRowLetter(RowNumber("myDataSetName"))

用数据集的名称或要应用它的作用域交换出
myDataSetName
。请记住,数据集和作用域名称区分大小写,并且必须用引号(“)括起来。

您可以使用一些自定义代码来实现这一点

转到报告属性,单击“代码”选项卡并将以下代码粘贴到自定义代码窗口中

Public Function GetRowLetter(RowNum As Integer) As String

' stick the RowNum in a variable that we can reduce until it's zero

Dim r As Integer
Dim i As Integer

Dim s As String ' holds result

s = ""
r = RowNum

' we start at the right side so if the rownum is 28 we want to be back AB
' need to get 'B' first

Do While RowNum > 0

    r = Int((RowNum - 1) / 26)
    i = (RowNum - 1) Mod 26
    s = Chr(i + 65) & s

    RowNum = r
Loop

GetRowLetter = s

End Function
这将给出“A”表示1,“B”表示2等,然后给出“AA”表示27,“AB”或28等

如果要返回小写字母,请将
65
替换为
98

在报告中,将文本框值表达式设置为

=Code.GetRowLetter(RowNumber("myDataSetName"))

用您要应用它的数据集或作用域的名称调出
myDataSetName
。请记住,数据集和作用域名称区分大小写,必须用引号括起来(“)

谢谢@Alan。我试试这个。谢谢@Alan。我试试这个。