Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / проблема с "Range(Cells(" при цикле / 6 сообщений из 6, страница 1 из 1
25.04.2011, 13:25
    #37231892
justice85
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с "Range(Cells(" при цикле
код ниже: переставляет в B1 найденную двойку. и всё. код правильно работает.
(в листах 1,2,3 у нас A1=1, A2=2, в остальных ячейках пусто)

sub sssDim a(3), b(3)
For i = 1 To 3
Set found = Worksheets(i).Range("a1:a10").Find("2", LookIn:=xlFormulas)
a(i) = found.Row: b(i) = found.Column

Worksheets(i).Range("B1").Value = Worksheets(i).Cells(a(i), b(i)).Value'*********

Next i
End Sub

НО
Если вместо строки ********* поставить строку
Worksheets(i).Range("B1:B2").Value = Worksheets(i).Range(Cells(1, 1), Cells(a(i), b(i))).Value

код дает: object-defined error
разница с первым кодом в том, что здесь уже две ячеки(точнее диапазон B1:B2) вставляет. и всё.
...
Рейтинг: 0 / 0
25.04.2011, 13:36
    #37231926
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с "Range(Cells(" при цикле
Интересно, когда же до автора дойдет, как надо оформлять код в сообщениях....
...
Рейтинг: 0 / 0
25.04.2011, 13:39
    #37231932
проблема с "Range(Cells(" при цикле
justice85,
разница с первым кодом в том, что здесь уже две ячеки(точнее диапазон B1:B2) вставляет. и всё.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
' Эт только на первый взгляд так кажется.
' Замените 
Worksheets(i).Range("B1:B2").Value = Worksheets(i).Range(Cells( 1 ,  1 ), Cells(a(i), b(i))).Value
' на 
With Worksheets(i)
.Range("B1:B2").Value = .Range(.Cells( 1 ,  1 ), .Cells(a(i), b(i))).Value
End With
' и будьте счастливы
...
Рейтинг: 0 / 0
25.04.2011, 13:45
    #37231944
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с "Range(Cells(" при цикле
justice85,

Код: plaintext
Worksheets(i).Range("B1:B2").Value = Worksheets(i).Range(Worksheets(i).Cells( 1 ,  1 ), Worksheets(i).Cells(a(i), b(i))).Value
...
Рейтинг: 0 / 0
25.04.2011, 16:04
    #37232261
justice85
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с "Range(Cells(" при цикле
Код: plaintext
With Worksheets(i)\n.Range("B1:B2").Value = .Range(.Cells( 1 ,  1 ), .Cells(a(i), b(i))).Value\nEnd With
и
justice85:
top encryption secret
ирония?
...
Рейтинг: 0 / 0
25.04.2011, 16:07
    #37232268
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с "Range(Cells(" при цикле
justice85ирония?

Код: plaintext
1.
With Worksheets(i)
Код: plaintext
With i
заметна разница?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / проблема с "Range(Cells(" при цикле / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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