![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 26.08.2010
Сообщений: 2
|
![]()
i = 1
r = 9 p = 8 Do While i < 13 Range("B" + r + ":Y" + r).Select Selection.Copy Range("Z" + p).Select вот этот код представляет мои намерения ) т.е. с изменением перменной r я хочу переходить к следующим строкам как это сделать правильно? вба вижу в первый раз |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
![]()
можно так:
Код:
Нет нерешаемых задач - есть недостаток времени и данных!
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 26.05.2010
Сообщений: 77
|
![]()
Этот код работать не будет поскольку при
Range("B" & r & ":Y" & r).Select - получим сообщение об ошибке из-за несовпадения типов. Правильно будет Range("B" & Trim(Str(r)) & ":Y" & Trim(Str(r)). Select Можно попробовать такой вариант Sub Перемещение() Dim VerhNiz As Integer, LevoPravo As Integer ' перемещением по строкам (вверх/вниз) задается в зависимости ' от значения установленного в яч. А1 (- вверх / + вниз) VerhNiz = Range("A1").Value ' перемещением по колонкам (влево/вправо) задается в зависимости ' от значения установленного в яч. А2 (- влево / + вправо) LevoPravo = Range("A2").Value ' Задаем начальную ячейку от которой будем двигаться. К примеру А3 Range("A3").Select ActiveCell.Offset(VerhNiz, LevoPravo).Select End Sub Поскольку ув hotcoffe не силен(а) в ВБА постарался быть подробным в описании
Спасибо и Пасибы принимаются на WebMoney в американских Z143254902288 или русских R388611339241 монетах
Последний раз редактировалось alebed; 26.08.2010 в 09:34. Причина: Дополнение |
![]() |
![]() |
![]() |
#4 |
Новичок
Джуниор
Регистрация: 26.08.2010
Сообщений: 2
|
![]()
большое спасибо
|
![]() |
![]() |
![]() |
#5 | |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
![]() Цитата:
Не работает, если поставить вместо амперсанда плюсик.
Нет нерешаемых задач - есть недостаток времени и данных!
|
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 26.05.2010
Сообщений: 77
|
![]()
Если необходимо выбрать диапазон ячеек (к примеру 6)
то строку ActiveCell.Offset(VerhNiz, LevoPravo).Select необходимо заменить на Range(ActiveCell.Offset(VerhNiz, LevoPravo), ActiveCell.Offset(VerhNiz + 2, LevoPravo + 2)).Select For Skif-F я опечатался, хотел написать про + но при наборе автоматом заменил на ампы ![]()
Спасибо и Пасибы принимаются на WebMoney в американских Z143254902288 или русских R388611339241 монетах
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
Если переменные i, r и p есть числа, то лучше использовать не Range(...), а Cells(...).
Чем шире угол зрения, тем он тупее.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Диапазон раскидать по ячейкам | bysteps | Microsoft Office Excel | 7 | 20.03.2010 23:31 |
Разделение текста по ячейкам | Flangini | Microsoft Office Excel | 11 | 25.02.2010 13:02 |
Комментарии к ячейкам | nikolai_P | Microsoft Office Excel | 1 | 18.06.2009 13:54 |
Переход по "ячейкам" матрицы | LiaBerk | Помощь студентам | 0 | 13.06.2009 15:29 |
Обрашение к фиксированным ячейкам | Лубышев | Помощь студентам | 1 | 29.10.2008 13:47 |