Сообщество программистов Autodesk в СНГ

ADN Club => VBA => Тема начата: Den_mi от 20-03-2020, 15:46:36

Название: Получение буквенного идентификатора ячейки в таблице
Отправлено: Den_mi от 20-03-2020, 15:46:36
Здравствуйте!
Начал осваивать создание таблиц в VBA и понял что не могу найти стандартного способа получения буквенного идентификатора ячейки таблицы, например для вписывания в  формулу.
Накидал небольшой код по переводу номера колонки в букву, вроде работает, но может есть более простой способ и не стоит изобретать велосипед?


Код - Visual Basic [Выбрать]
  1. Function LetFrNum(i As Integer)
  2. Dim intKol As Integer, Temp As Integer, Temp2 As Integer
  3. If (i + 1) <= 26 Then
  4. LetFrNum = Mid("ABCDEFGHIJKLMNOPQRSTUVWXYZ", (i + 1), 1)
  5. Else
  6. intKol = 26
  7. For Temp = 1 To 26
  8.     For Temp2 = 1 To 26
  9.         LetFrNum = Mid("ABCDEFGHIJKLMNOPQRSTUVWXYZ", Temp, 1) & Mid("ABCDEFGHIJKLMNOPQRSTUVWXYZ", Temp2, 1)
  10.         intKol = intKol + 1
  11.         If intKol = (i + 1) Then
  12.             Exit For
  13.         End If
  14.     Next Temp2
  15.     If intKol = (i + 1) Then
  16.         Exit For
  17.     End If
  18. Next Temp
  19. End If
  20. End Function
  21.  
  22. Sub Test()
  23. Dim a(6) As Integer
  24. a(0) = 0: a(1) = 1: a(2) = 25: a(3) = 26: a(4) = 48: a(5) = 200
  25. MsgBox LetFrNum(a(0)) & " " & LetFrNum(a(1)) & " " & LetFrNum(a(2)) & " " & LetFrNum(a(3)) & " " & LetFrNum(a(4)) & " " & LetFrNum(a(5))
  26. End Sub

замечания по коду приветствуются)
Название: Re: Получение буквы ячейки в таблице
Отправлено: Александр Ривилис от 20-03-2020, 15:57:36
Поиск приводит к этому коду:
https://docs.microsoft.com/en-us/office/troubleshoot/excel/convert-excel-column-numbers