Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Выделить строки в Excel / 23 сообщений из 23, страница 1 из 1
18.08.2006, 14:29
    #33928325
Sasha_OAN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Есть такая задача.
Мне нужно выделить диапазон строк (этот диапазон постоянно меняется, но первая строка постоянная)
По приложенному файлу задача:
Выделить строки начиная с 6 (постоянная) строки по 9 (включительно) и скопировать эти строки

Как я понимаю это сделать. Надо найти первую пустую сроку начиная с 6 строки, т.е. эта первая пустая строка будет 10, и от этой пустой строки отнять одину строку и получиться диапазон с 6 по 9.

Как это сделать, подскажите...
...
Рейтинг: 0 / 0
18.08.2006, 14:55
    #33928455
AndreyMp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Начни запись макроса. Сделай все что надо вручную. Посмотри полученный код и многое станет ясно. Доработать потом дело техники.
...
Рейтинг: 0 / 0
04.06.2007, 17:16
    #34572936
Dm'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Появился вопрос, по теме заголовка, новую открывать не хоться.
Нужно в Excell выделять строки и копировать в другую книгу.
Вопрос следующий, выделять строки с помощью ctrl для user'a сложно, один раз не туда нажал и выделение пропало.
Вот думаю как выделять нужные строчки.
Один из вариантов навесить макрос который по сочетанию клавиш бы заливал выделенные строчки цветом. И уже по раскрашенным строчкам делать копирование.
Мож кто чего похитрее предложит.

С уважением, Dm'B
...
Рейтинг: 0 / 0
05.06.2007, 09:50
    #34574118
Dm'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Никаких вариантов?
...
Рейтинг: 0 / 0
05.06.2007, 10:24
    #34574210
Wasup!
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Для этого в принципе не обязательно делать макрос. Пользователь может сам выделить строчку и залить её цветом. А потом макрос будет идти по строкам, и если цвет совпадает с заданным будет копировать её.
...
Рейтинг: 0 / 0
05.06.2007, 10:35
    #34574239
Dm'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Да спасибо, сделал все таки макрос так будет удобней.
По сочетанию кнопок выделять и снимать выделение.

Только вот еще вопросик, как проверить что выделена строка, а не ячейка или диапазон?
...
Рейтинг: 0 / 0
05.06.2007, 10:35
    #34574240
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
А каков критерий выделения строки??? Если в строчке постоянно встречаются одни и те же слова и выражения то почему бы не сделать проход по всем строкам листа с таким условием
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Select case Cells(i,j).text 

Case is "Вася"
        Копируем строку в лист с именем "Вася"

Case is "Петя"
        Копируем строку в лист с именем "Петя"

End Select


Вот что-то типа того....
...
Рейтинг: 0 / 0
05.06.2007, 10:50
    #34574278
Dm'b
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
2 gjghjc.

Нет там не по имени.
Я руками выделяю строку и макросом заливаю ее цветом,

If Selection.Interior.ColorIndex = xlNone Then
Selection.Rows.Interior.ColorIndex = 50
ElseIf Selection.Interior.ColorIndex <> xlNone Then
Selection.Rows.Interior.ColorIndex = xlNone
End If

вот вопрос в том как проверить что выделена вся строка, а не просто у меня курсор стоит на какой то ячейке, а то у меня щас и одна ячейка може поменять цвет.
...
Рейтинг: 0 / 0
05.06.2007, 11:10
    #34574344
nikopol
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Dm'b2 gjghjc.

Нет там не по имени.
Я руками выделяю строку и макросом заливаю ее цветом,

If Selection.Interior.ColorIndex = xlNone Then
Selection.Rows.Interior.ColorIndex = 50
ElseIf Selection.Interior.ColorIndex <> xlNone Then
Selection.Rows.Interior.ColorIndex = xlNone
End If

вот вопрос в том как проверить что выделена вся строка, а не просто у меня курсор стоит на какой то ячейке, а то у меня щас и одна ячейка може поменять цвет.
проверять Range?
...
Рейтинг: 0 / 0
05.06.2007, 11:16
    #34574360
Dm'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
2nikopol
Ага, только ячейка выделена или строка.
...
Рейтинг: 0 / 0
05.06.2007, 11:34
    #34574416
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Или я не понял вопроса или ты моего ответа... ПО КАКОМУ КРИТЕРИЮ ТЫ ВЫДЕЛЯЕШЬ ЯЧЕЙКУ ЦВЕТОМ???
...
Рейтинг: 0 / 0
05.06.2007, 11:49
    #34574482
Dm'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Критерий то что строка выделена. Руками.
Выделил на листе строчку она и должна выделиться цветом.
Других критериев нет.
...
Рейтинг: 0 / 0
05.06.2007, 12:11
    #34574583
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Хорошо, а как пользователь узнает что нужно выделить и раскрасить именно строку 10 а не 11???
я так понимаю по содержимому некоторых ячеек???
...
Рейтинг: 0 / 0
05.06.2007, 12:27
    #34574660
Dm'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Да по содержимому:))
Но это могут быть каждый раз разные данные.
Это должен определять пользователь, нужно ему работать с этой строкой или нет.
...
Рейтинг: 0 / 0
05.06.2007, 12:39
    #34574720
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Так.... если может определить пользователь то сможет и программа... главное найти те слова и сочетания которые однозначно определяют что данная строка должна быть раскрашена например зеленым цветом..
Например

Если Cell(1,1) = "Вася" и Cell(1,3) = "Превед" То копируем в Лист("Вася")
Если Cell(1,1) = "Петя" и Cell(1,3) = "Медвед" То копируем в Лист("Петя")
Просто у меня была как -то задача раскидать по цветам отчет приходящий из головного офиса.... я для начала выделил систему по которой пользователь расрашивал ячейки... нашел в них словосочетания которые однозначно говорили о том что строчка должна быть например зеленой и красил ее.

Отчет формировался программой... следовательно и обрабатывать его тоже должно программой а не руками бедного изможденного юзверя.... Если же в твоем случае файл создается человеком то нужно просто прийти к соглашению каково должно быть написание того или иного понятия.
Правда нужно только учесть как можно больше возможных сочетаний + сделать программу обучаемой...
...
Рейтинг: 0 / 0
05.06.2007, 12:46
    #34574755
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
вдогонку к посту... когда я начал автоматизацию раскрашивания отчета он умещался на одном печатном листе экселя...... на момент моего ухода из организации отчет составлял уже до двух десятков листов..... Особенно весело было во вторник... когда в отчет попадали операции за выходные..
...
Рейтинг: 0 / 0
05.06.2007, 12:49
    #34574771
Dn'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Да нет мне пока не надо так сложно делать.
Сейчас все таки задача проверить выделена вся строка или просто курсором выделена одна ячейка.
...
Рейтинг: 0 / 0
05.06.2007, 13:20
    #34574903
Dn'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
[quot gjghjc]Отчет формировался программой... следовательно и обрабатывать его тоже должно программой а не руками бедного изможденного юзверя.... Если же в твоем случае файл создается человеком то нужно просто прийти к соглашению каково должно быть написание того или иного понятия.
quot]
Скажем так юзеры выделяют входные параметры для программы, а дальше собсна она и начинает работать.
...
Рейтинг: 0 / 0
05.06.2007, 13:28
    #34574931
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Row_Count = Application.selection.Rows.Count
Это для строк...если значения больше 1 то след. выделен диапазон...
Col_Count = Application.selection.Columns.Count
Это для столбцов
...
Рейтинг: 0 / 0
06.06.2007, 00:36
    #34576479
Дадахан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Dm'b
вот вопрос в том как проверить что выделена вся строка, а не просто у меня курсор стоит на какой то ячейке, а то у меня щас и одна ячейка може поменять цвет.

Код: plaintext
1.
2.
3.
4.
5.
6.
if selection.rows.count = 1  and selection.cells.count=rows( 1 ).Cells.Count then 
    If Selection.Interior.ColorIndex = xlNone Then
       Selection.Rows.Interior.ColorIndex =  50 
    ElseIf Selection.Interior.ColorIndex <> xlNone Then
       Selection.Rows.Interior.ColorIndex = xlNone
    End If
end if

кусок
Код: plaintext
rows( 1 ).Cells.Count
создан для backсовместимости версий excel, так как в 2007 офисе столбцов более 16000.
...
Рейтинг: 0 / 0
06.06.2007, 10:07
    #34576906
Dm'B
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Спасибо за ответы, щас вроде все выглядит как хотелось.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
27.03.2009, 12:32
    #35896156
kabancheg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Проблема такая же, как у Sasha_OAN, весь мозг сломал, все форумы перерыл, решения не нашел.
Проблема такая: Есть отчет, который нужно отсортировать. Длина отчета каждый день разная. В конце отчета строка "итого", которую сортировать, ессно, не надо. Как выделить именно нужные мне строки с шестой по предпоследнюю? Написал вот такой макрос

Sub строкидлясортировки()



Dim Строк_Всего As Long ' задаем переменные
Dim начало As Long

Dim конец As Long




With ActiveSheet 'считаем строки документа

Range("A1").Select 'выбор первой ячейки диапазона
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select 'shift+ctl+end
Строк_Всего = Selection.Rows.Count ' считает строки выделенного диапазона
начало = 6
конец = Строк_Всего - 1
Rows("начало:конец").Select

'MsgBox "Выделенный диапазон содержит " & Строк_Всего & " строк :)"

End With

End Sub


Вот на эту строку Rows("начало:конец").Select при выполнении ругается, не понимает чего-то.
...
Рейтинг: 0 / 0
27.03.2009, 14:11
    #35896541
kabancheg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выделить строки в Excel
Таки дошло

Код: plaintext
1.
2.
3.
    
    Range("A7").Select
    'выбор первой ячейки диапазона на строку ниже, т.к. диапазон сдвигается весь
    Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Offset(- 1 ,  0 ).Select  'shift+ctl+end
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Выделить строки в Excel / 23 сообщений из 23, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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