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

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

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

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

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

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

Отчет формировался программой... следовательно и обрабатывать его тоже должно программой а не руками бедного изможденного юзверя.... Если же в твоем случае файл создается человеком то нужно просто прийти к соглашению каково должно быть написание того или иного понятия.
Правда нужно только учесть как можно больше возможных сочетаний + сделать программу обучаемой...
...
Рейтинг: 0 / 0
Выделить строки в Excel
    #34574755
Фотография gjghjc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вдогонку к посту... когда я начал автоматизацию раскрашивания отчета он умещался на одном печатном листе экселя...... на момент моего ухода из организации отчет составлял уже до двух десятков листов..... Особенно весело было во вторник... когда в отчет попадали операции за выходные..
...
Рейтинг: 0 / 0
Выделить строки в Excel
    #34574771
Dn'B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да нет мне пока не надо так сложно делать.
Сейчас все таки задача проверить выделена вся строка или просто курсором выделена одна ячейка.
...
Рейтинг: 0 / 0
Выделить строки в Excel
    #34574903
Dn'B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot gjghjc]Отчет формировался программой... следовательно и обрабатывать его тоже должно программой а не руками бедного изможденного юзверя.... Если же в твоем случае файл создается человеком то нужно просто прийти к соглашению каково должно быть написание того или иного понятия.
quot]
Скажем так юзеры выделяют входные параметры для программы, а дальше собсна она и начинает работать.
...
Рейтинг: 0 / 0
Выделить строки в Excel
    #34574931
Фотография gjghjc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Row_Count = Application.selection.Rows.Count
Это для строк...если значения больше 1 то след. выделен диапазон...
Col_Count = Application.selection.Columns.Count
Это для столбцов
...
Рейтинг: 0 / 0
Выделить строки в Excel
    #34576479
Фотография Дадахан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
Выделить строки в Excel
    #34576906
Dm'B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ответы, щас вроде все выглядит как хотелось.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Выделить строки в Excel
    #35896156
kabancheg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема такая же, как у 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
Выделить строки в Excel
    #35896541
kabancheg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таки дошло

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


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