powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Подскажите функцию...
10 сообщений из 10, страница 1 из 1
Подскажите функцию...
    #33242453
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть ли такая функция, которая будет добавлять к диапазону ячеек еще одну строку. Но только не union.А то вот это дело жутко тормозит:


Код: plaintext
1.
2.
3.
4.
If r1 Is Nothing Then
    Set r1 = Range(Cells((i - 1) * 3 + 1, 1), Cells((i - 1) * 3 + 1, 1))
  Else
    Set r1 = Union(r1, Range(Cells((i - 1) * 3 + 1, 1), Cells((i - 1) * 3 + 1, 1)))
  End If
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33242552
Код: plaintext
1.
2.
Set r1 = Range("" & r1.Address & ", " & _
  Range(Cells((i -  1 ) *  3  +  1 ,  1 ), Cells((i -  1 ) *  3  +  1 ,  1 )).Address & "")
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33242701
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Resize Property
Resizes the specified range. Returns a Range object that represents the resized range.
Syntax
expression. Resize ( RowSize, ColumnSize )
expression Required. An expression that returns a Range object to be resized.
RowSize Optional Variant. The number of rows in the new range. If this argument is omitted, the number of rows in the range remains the same.
ColumnSize Optional Variant. The number of columns in the new range. If this argument is omitted, the number of columns in the range remains the same.
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33242754
Я тоже сначала подумал про Resize. Но потом, прочитав внимательнее, я понял, что Аленочка хочет в один диапазон объединить два диапазона, а не расширить имеющийся.
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33244734
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2Я тоже сначала подумал про Resize. Но потом, прочитав внимательнее, я понял, что Аленочка хочет в один диапазон объединить два диапазона, а не расширить имеющийся.

Я хочу не объеденить, а расширить, вот например у меня в диапазоне 1000 строк и к нему постоянно добавляется по одной строке, можно использовать union, но на практике это занимает много времени и наверное точки зрения экономии памяти тоже неэффективно.

Поэтому нужны другие способы решения проблемы.
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33244743
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот так?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim i As Integer
Dim r1 As Range

Set r1 = Nothing

For i = 1 To Cells(1, 2).Value

  If r1 Is Nothing Then
    Set r1 = Range(Cells((i - 1) * 3 + 1, 1), Cells((i - 1) * 3 + 1, 1))
  Else
    r1.Resize(Range(Cells((i - 1) * 3 + 1, 1), Cells((i - 1) * 3 + 1, 1)))
  End If

Не работает!
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33244744
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2
Код: plaintext
1.
2.
Set r1 = Range("" & r1.Address & ", " & _
  Range(Cells((i -  1 ) *  3  +  1 ,  1 ), Cells((i -  1 ) *  3  +  1 ,  1 )).Address & "")


Работает...
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33244746
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2
Код: plaintext
1.
2.
Set r1 = Range("" & r1.Address & ", " & _
  Range(Cells((i -  1 ) *  3  +  1 ,  1 ), Cells((i -  1 ) *  3  +  1 ,  1 )).Address & "")


Если вас не затруднит, объясните смысл этой записи и преимущество перед union.
Заранее спасибо
...
Рейтинг: 0 / 0
Подскажите функцию...
    #33244748
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь2
Код: plaintext
1.
2.
Set r1 = Range("" & r1.Address & ", " & _
  Range(Cells((i -  1 ) *  3  +  1 ,  1 ), Cells((i -  1 ) *  3  +  1 ,  1 )).Address & "")


При большом размере диапазона не работает, так как ограничение строки до 256 символов
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Подскажите функцию...
    #34426557
Granata005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Утож.... мне тоже самое сейчас приходится делать...
строки в разнобой по всему листу и их очень много... :(
придётся Union использовать....
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Подскажите функцию...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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