Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / определить начало и конец диапазона / 12 сообщений из 12, страница 1 из 1
08.06.2011, 12:03
    #37300231
_unkind_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
Использую такую ф-цию
Sub TestRange()
Dim r As Range
Set r = Range("rrrrr")
MsgBox (r.Columns.End(xlUp).Address)
MsgBox (r.Columns.End(xlDown).Address)
End Sub

но результаты не верны

$B$61
$B$1048576

а должно быть
$B$63
$B$65

если использую Debug.Print (r.Columns.Address)
дает правильный результат
$B$63:$B$65
но его нужно разбить на начало и конец

Почему не правильно отрабатывает ф-ция? как исправить или другим способом определить начало и конец range?
...
Рейтинг: 0 / 0
08.06.2011, 12:19
    #37300284
PlanB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Sub M1()
Dim s, s1, s2 As String

    s = Range("$A$1").CurrentRegion.Address
    s1 = Left(s, InStr( 1 , s, ":") -  1 )
    s2 = Right(s, InStr( 1 , s, ":"))
Debug.Print Selection.CurrentRegion.Address
Debug.Print s1
Debug.Print s2
End Sub
...
Рейтинг: 0 / 0
08.06.2011, 12:52
    #37300374
_unkind_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
PlanB
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Sub M1()
Dim s, s1, s2 As String

    s = Range("$A$1").CurrentRegion.Address
    s1 = Left(s, InStr( 1 , s, ":") -  1 )
    s2 = Right(s, InStr( 1 , s, ":"))
Debug.Print Selection.CurrentRegion.Address
Debug.Print s1
Debug.Print s2
End Sub


$A$61
:$B$63

должно

$B$63
$B$65

не силен в vba, подскажите
...
Рейтинг: 0 / 0
08.06.2011, 13:01
    #37300406
iskatelsql
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
_unkind_,

r.row
r.rows.count
...
Рейтинг: 0 / 0
08.06.2011, 13:18
    #37300434
_unkind_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
Dim r As Range
Dim s, s1, s2 As String

Set r = Range("P_T2RXXXXG2SROWNUM1")

s = r.Columns.Address
s1 = Left(s, InStr(1, s, ":") - 1)
s2 = Right(s, InStr(1, s, ":") - 1)

Debug.Print s1
Debug.Print s2

Всем спасибо
...
Рейтинг: 0 / 0
08.06.2011, 14:09
    #37300556
PlanB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
я не поставил второй -1...вы сами исправили.
не за что
...
Рейтинг: 0 / 0
09.06.2011, 10:37
    #37301953
_unkind_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
PlanB,

помогите с таким вопросом...
начало и конец диапазона определили, если создан обычный диапазон, через диспетчер имен, то его можно без проблем программно расширить, а если делать привязку к xsd схеме, то создается таблица, как ее можно программно расширить?

файлы прикреплены
...
Рейтинг: 0 / 0
09.06.2011, 13:11
    #37302346
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
_unkind_если использую Debug.Print (r.Columns.Address)
дает правильный результат
$B$63:$B$65
но его нужно разбить на начало и конецSplit()
...
Рейтинг: 0 / 0
09.06.2011, 13:36
    #37302397
_unkind_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
Akina_unkind_если использую Debug.Print (r.Columns.Address)
дает правильный результат
$B$63:$B$65
но его нужно разбить на начало и конецSplit()

выше написано, это все делалось и потом с помощью
ActiveWorkbook.Names(range).RefersTo = "=report!$" & col & "$" & r1 & ":$" & col & "$" & r2 & ""

менялся диапазон, но если используется таблица, как в примере, которая сопоставлена с xml, то расширить range не получается, вылетает ошибка для этого метода
...
Рейтинг: 0 / 0
09.06.2011, 14:22
    #37302515
PlanB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
_unkind_PlanB,

помогите с таким вопросом...
начало и конец диапазона определили, если создан обычный диапазон, через диспетчер имен, то его можно без проблем программно расширить, а если делать привязку к xsd схеме, то создается таблица, как ее можно программно расширить?

файлы прикрепленывопрос-то в чем? как программно расширить таблицу в файле excel?
Код: plaintext
1.
2.
Sub M4
ThisWorkbook.Worksheets( 1 ).ListObjects("Таблица1").Resize Range("$A$1:$B$17")
End Sub
...
Рейтинг: 0 / 0
09.06.2011, 15:12
    #37302666
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
_unkind_выше написано, это все делалось
Да ну?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Sub M1()
Dim s As String
Dim sx() as string

    s = Range("$A$1").CurrentRegion.Address
    sx = split(s, ":")

Debug.Print Selection.CurrentRegion.Address
Debug.Print sx( 0 )
Debug.Print sx( 1 )
End Sub
...
Рейтинг: 0 / 0
09.06.2011, 15:21
    #37302689
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
определить начало и конец диапазона
_unkind_если используется таблица, как в примере, которая сопоставлена с xml, то расширить range не получается, вылетает ошибка для этого метода
Не понял... Вы собираетесь раздвинуть шаблон? Или хотите внести в него пустые записи? или что?
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / определить начало и конец диапазона / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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