Страница: 1 | 2 | 3 |
Вопрос: поиск строки по ячейке
Добавлено: 04.06.08 15:29
Автор вопроса: sashok60
Ответы
Всего ответов: 38
Номер ответа: 16
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #16
Добавлено: 05.06.08 11:13
может свой пример вышлешь я посмотрю
Номер ответа: 17
Автор ответа:
Fatty
Вопросов: 0
Ответов: 55
Профиль | | #17
Добавлено: 05.06.08 11:14
А если попробовать тупым перебором ячеек,
мне кажется будет работать в любой версии:
Dim Wsh As Worksheet
Dim Rng As Range
Dim cRng As Range
Dim iRng As Range
Dim i As Long
Dim j As Long
Set Wsh = Sheets("Лист1"
Set Rng = Wsh.Range("A1", Wsh.Range("A" & Wsh.UsedRange.Rows.Count).End(xlUp))
j = 1
For i = 1 To Rng.Rows.Count
If Rng.Cells(i, 1).Value = "" Then
Rng.Rows(i).EntireRow.Copy Destination:=Sheets("Лист2".Range("A" & CStr(j))
j = j + 1
End If
Next
End Sub
~'J'~
Номер ответа: 18
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #18
Добавлено: 05.06.08 11:40
Куда выслать?
Номер ответа: 19
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #19
Добавлено: 05.06.08 11:51
sashok60@rambler.ru
Номер ответа: 20
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #20
Добавлено: 05.06.08 12:03
Private Sub Macro1()
 im RowIndex As Long
 im tmpRange As String
Sheets("Ëèñò1".Select
For RowIndex = 2 To 18
If Len(Cells(RowIndex, vbNull).Value) = 0 Then _
tmpRange = tmpRange & CStr(RowIndex) & ":" & CStr(RowIndex) & ","
Next
If Len(tmpRange) > vbNull Then
tmpRange = Left$(tmpRange, Len(tmpRange) - vbNull)
Range(tmpRange).Select
Selection.Copy
Sheets("Ëèñò2".Select
ActiveSheet.Paste
Sheets("Ëèñò1".Select
Selection.Delete
Range("A1".Select
End If
End Sub
Этот код проходит только если на втором листе выделить любую ячейку в первом столбце
Номер ответа: 21
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #21
Добавлено: 05.06.08 12:22
Ну дык, проблема выделить её чтоли?
Номер ответа: 22
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #22
Добавлено: 05.06.08 12:27
пишу выделить ячейку А1, сразу выдает ошибку
Номер ответа: 23
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #23
Добавлено: 05.06.08 12:54
sash пробовал код Fatty?
Private Sub Macro1()
Dim RowIndex As Long
Dim tmpRange As String
Sheets("Лист1".Select
For RowIndex = 2 To 18
If Len(Cells(RowIndex, vbNull).Value) = 0 Then _
tmpRange = tmpRange & CStr(RowIndex) & ":" & CStr(RowIndex) & ","
Next
If Len(tmpRange) > vbNull Then
tmpRange = Left$(tmpRange, Len(tmpRange) - vbNull)
Range(tmpRange).Select
Selection.Copy
Sheets("Лист2".Select
Range("A1".Select
ActiveSheet.Paste
Sheets("Лист1".Select
Selection.Delete
Range("A1".Select
End If
End Sub
Номер ответа: 24
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #24
Добавлено: 05.06.08 13:11
Range("A1".Select вот на этом ошибка, если это убираю и выделяю любую ячейку в первом столбце, все работает
Номер ответа: 25
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #25
Добавлено: 05.06.08 13:34
Все понял в чем трабл, я писал макрос для листа, а если для книги то все нормально
Номер ответа: 26
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #26
Добавлено: 05.06.08 15:03
И еще может быть глупый вопрос: как сделать активным следующий лист? не по названию
Номер ответа: 27
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #27
Добавлено: 05.06.08 15:14
Sheets(1).Select
Sheets(2).Select
Sheets(3).Select
Номер ответа: 28
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #28
Добавлено: 05.06.08 15:15
Сначала ответил, а потом уже понял вопрос
Номер ответа: 29
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #29
Добавлено: 05.06.08 15:17
Sheets(ActiveSheet.Index + 1).Select
Номер ответа: 30
Автор ответа:
sashok60
Вопросов: 3
Ответов: 23
Профиль | | #30
Добавлено: 05.06.08 15:18
не ты меня не понял, например: есть активный лист, просто надо выделить следующий, не важно какой предыдущий