Нумерация буквенная

Vadim Katkov
Дата: 11.11.2009 04:06:59
Народ подскажите как сделать буквенную нумерацию полей в отчете. Есть нумерация 1,2,3,5 ..... 37,38 нужно A,B,C,D......AA,AB,AC как нумерация столбцов в Excel. Буду очень вам признателен.
ё
Дата: 11.11.2009 07:57:48
Vadim Katkov
.... Есть нумерация 1,2,3,5 ..... 37,38 ...


т.е. - нумерация есть в источнике данных отчета?
заведите табличку
1-А
2-Б
и джойните с тем источником данных что есть сейчас
Vadim Katkov
Дата: 11.11.2009 09:11:39
Нее, нумерация проставляется автоматически при формировании отчета по типу [Num]=1
Нужна именно функция кто рая будет сопоставлять и заменять А B C AA AB......
Ёжик`
Дата: 11.11.2009 09:51:37
Public Function ae(n As Long) As String
Const sd = 64 'sd = Asc("A") - 1
'26 букв английского алфавита

If n < 27 Then                  'простой случай с одной буквой
    ae = Chr(sd + n)
ElseIf n Mod 26 = 0 Then        'сложный пограничный случай
    ae = ae((n - 1) \ 26) & "Z"
Else                            'сложный случай с несколькими буквами
    ae = ae(n \ 26) & Chr(sd + n Mod 26)
End If
End Function

? ae(7900)
KQV
-=-
Дата: 11.11.2009 09:56:50
Vadim Katkov
Нее, нумерация проставляется автоматически при формировании отчета по типу [Num]=1
Нужна именно функция кто рая будет сопоставлять и заменять А B C AA AB......

Пробуйте
Function ABC(n As Long) As String
Dim i As Long
  i = n
  Do While i <> 0
    i = i - 1
    ABC = Chr(65 + (i Mod 26)) & ABC
    i = i \ 26
  Loop
End Function
Ёжик`
Дата: 11.11.2009 09:59:02
'перенумератор чисел в вид екселя, на входе число, на выходе алфавит
Public Function ae(n As Long) As String
Const sd = 64 'sd = Asc("A") - 1
'26 букв английского алфавита
If n < 1 Then Exit Function     'а вдруг завтра война...
If n < 27 Then                  'простой случай с одной буквой
    ae = Chr(sd + n)
ElseIf n Mod 26 = 0 Then        'сложный пограничный случай
    ae = ae((n - 1) \ 26) & "Z"
Else                            'сложный случай с несколькими буквами
    ae = ae(n \ 26) & Chr(sd + n Mod 26)
End If
End Function
Vadim Katkov
Дата: 11.11.2009 10:04:29
Люди !!! Огромное вам спасибо. Ёжик тебе респект отдельный последний вариант то что нужно !

Всем спасибо.