powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Диапазон (конвертировать)
5 сообщений из 5, страница 1 из 1
Диапазон (конвертировать)
    #35265815
Nitrolis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет)
есть диапазон вида "Sheet1!R1C1:R3C3" (текст)
так как ето чудо в Range перевести??? ...или хотябы к виду "A1:C3". Без доп ячеек... только в коде!
...
Рейтинг: 0 / 0
Диапазон (конвертировать)
    #35265840
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вариант:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Public Function R1C1_to_Range(Source_Address As String) As Range
    Dim Sheet_Name As String
    Dim R1 As Integer, C1 As Integer, R2 As Integer, C2 As Integer
    Dim Top_Left As Range, Bottom_Right As Range
    
    Sheet_Name = Left(Source_Address, InStr(Source_Address, "!") -  1 )
    R1 = Val(Mid(Source_Address, InStr(InStr(Source_Address, "!"), Source_Address, "R") +  1 ))
    C1 = Val(Mid(Source_Address, InStr(InStr(Source_Address, "!"), Source_Address, "C") +  1 ))
    R2 = Val(Mid(Source_Address, InStr(InStr(Source_Address, ":"), Source_Address, "R") +  1 ))
    C2 = Val(Mid(Source_Address, InStr(InStr(Source_Address, ":"), Source_Address, "C") +  1 ))
    
    
    Set Top_Left = Worksheets(Sheet_Name).Cells(R1, C1)
    Set Bottom_Right = Worksheets(Sheet_Name).Cells(R2, C2)
    Set R1C1_to_Range = Range(Top_Left, Bottom_Right)
End Function
...
Рейтинг: 0 / 0
Диапазон (конвертировать)
    #35265873
Nitrolis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо! отличная функция!!
Поработаю над ней, чтоб для диапазона на текущем листе работала (без Sheet1!) и для Range-в типа R1:R5 или C5:C10...
...
Рейтинг: 0 / 0
Диапазон (конвертировать)
    #35265936
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно так ещё, минус что настройки меняет

Код: plaintext
1.
2.
3.
4.
5.
6.
Public Function R1C1_to_RNG(Source_Address As String) As Range
Dim x
x = Application.ReferenceStyle
 Application.ReferenceStyle = xlR1C1
  Set R1C1_to_RNG = Evaluate(Source_Address)
 Application.ReferenceStyle = x
End Function
...
Рейтинг: 0 / 0
Диапазон (конвертировать)
    #35850847
Anton Klyauzov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как наоборот сделать? Есть Selection.Range
Как из него текстовый диапазон получить?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Диапазон (конвертировать)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]