Страницы: 1
RSS
В массиве 5*5 надо очистить ячейки 3 строки с 3 по 5 столбец
 
Как в массиве 5, 5 очистить в 3 строке с 3 по 5 столбец ячейки ?
Изменено: getana - 12.10.2019 11:43:17
 
range(rg55.cells(3,3), rg55.cells(3,5)).clearcontents
где rg55 - ваш диапазон 5х5  
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко, Range(R_data.Cells(3, 3), R_data.Cells(3, 5)).ClearContents    или   Range(R_data(3, 3), R_data(3, 5)).ClearContents  -  так в моем примере не работает. Так действие надо сделать не в книге excel, а в массиве непосредственно в примере. Вопрос остается открытым!  пишет ошибку: <Method 'Range' of object '_Global' failed>
Изменено: getana - 12.10.2019 12:44:58
 
Перебрать элементы массива циклом.
 
Юрий М, у меня сейчас временно так и сделано. Но мне кажется быстрее было бы за раз сразу объект удалить. Или функция Range в массивах неприменима?
 
Не встречал такой )) Да и в памяти это ведь займёт совсем мало времени.
 
getana, Range работает с листом, и в массиве нет объекта строка, и тем более часть строки.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:  в массиве нет объекта строка,
Объекта нет, но...  как посмотреть :)
Код
Sub Test_()
    Dim a(1 To 9, 1 To 5)
    Dim i As Long, j As Long
    
    For i = 1 To 9
        For j = 1 To 5
            a(i, j) = i * 10 + j
        Next j
    Next i
    
    Cells(1, 1).Resize(1, 5).Value = Application.Index(a, 2, 0)
End Sub

Одна неприятность - автору все равно не поможет
 
Цитата
БМВ написал:
в массиве нет объекта строка, и тем более часть строки.
Но строку или столбец выгрузить можно )
===
Вить, а зачем два цикла, если нужно обработать одну строку? )
 
А кто сказал, что это строка или столбец?  Это одно из измерений не более.
По вопросам из тем форума, личку не читаю.
 
Миш, ну а как тогда назвать группу элементов массива, у которых одинаковый номер строки или столбца?
 
Точно так же как и у массива с четырьмя и более измерениями :-) Плоско мыслите :-)
По вопросам из тем форума, личку не читаю.
 
Код
Dim Arr()
    Arr = Range("A1:D5").Value
Как назвать группу элементов массива Arr(3,1), Arr(3,2), Arr(3,3), Arr(3,4), Arr(3,5)?
Если не строкой, то как?
 
А почему строкой? Неизменный первый индекс - не означает что это строка, может это горизонтальный столбец :-)  Юра, я все ж предпочту понятие энного измерения и в твоем примере это элементы с одинаковым индексом(адресом) по первому измерению.
По вопросам из тем форума, личку не читаю.
 
Но ведь очень наглядно и понятно для такого массива называть это строкой: "третья строка массива" )
Или понятнее будет "набор элементов массива с индексом 3 по первому изменению"?
 
Юрий М, Почему стока? Только потому что первое измерение? Это условности. Вспомним   R1C1 и A1 стили.  Индексы типа меняются местами.
По вопросам из тем форума, личку не читаю.
 
Зануда. Я думал, что я тут самый зануда, но нет... )) Строка - потому что строка ) Если я этот массив без транспонирования выгружу на лист, то "строки" массива станут строками на листе.
Строка, и всё тут!

Земля круглая, а луна к нам всегда одной стороной.
 
Цитата
Юрий М написал:
нет... ))
Январь не везде зимний месяц на круглой планете земля  :o) . Все зависит от точки зрения. Ща до теории относительности доберемся. :-) , в споре, что было раньше, строка или столбец!
По вопросам из тем форума, личку не читаю.
 
Ты название темы почитай - ТС хочет строку. И всё тут.
 
Цитата
Юрий М написал:
И всё тут.
Ну тогда ищи ячейки в массиве :-) они там тоже упомянуты.
По вопросам из тем форума, личку не читаю.
 
Это автор погорячился чуток ))
 
Цитата
Юрий М написал: зачем два цикла, если нужно обработать одну строку?
Чтобы показать, что из вертикальной размерности можно выудить любую "строку"
Страницы: 1
Наверх