powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выборка строк в Excel
21 сообщений из 21, страница 1 из 1
Выборка строк в Excel
    #33013301
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите как можно с помощью цикла выбрать строки по первому столбцу и скопировать их, допустим в Лист2, я с запарами на работе чёто тупить
начал :(
Есть таблица:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
москва	 56 	ввв
москва	 42 	ппп
питер	 54 	рол
ростов	 23 	кен
питер	 48 	вук
москва	 98 	пир
москва	 78 	рот
ростов	 35 	рог
ростов	 48 	куц
ростов	 222 	фыц
питер	 444 	яву
питер	 888 	сам
ростов	 999 	пим
Нужно выбрать записи, которым соответствует допустим запись "ростов" и закинуть результат в Лист2 для дальнейшей работы.
Если ответ прост, не злитесь, но у меня сейчас тяжелое время.
Заранее благодарен за ответ!
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33013499
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автофильтр не поможет?
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33013786
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Допустим я выбрал автофильтром данные, как я могу скопировать их в другой лист
Код: plaintext
1.
2.
Range("A1:C1").Select
Selection.AutoFilter
Selection.AutoFilter Field:= 1 , Criteria1:="Ростов"
что нужно написать дальше?
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33013911
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажем так:
см. картинку.
1. Создаешь отдельно список городов,
2. Создаешь комбобокс,
3. Вешаешь на него такую вот процедурку:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
Public Sub RangeCopy()
    Dim sRange, S As String

    sRange = ""
    S = Application.WorksheetFunction.VLookup(Range("E3"), Range("I3:J5"),  2 )
    i =  1 
    While Range("A" & i).Text <> ""
        If Trim(Range("A" & i).Value) = S Then
            If sRange <> "" Then
                sRange = sRange & "," & "A" & i & ":" & "C" & i
            Else
                sRange = "A" & i & ":" & "C" & i
            End If
        End If
        i = i +  1 
    Wend
    If sRange <> "" Then
        Range(sRange).Select
        Selection.Copy
        Sheets("Ëèñò2").Select
        Range("A1").Select
        ActiveSheet.Paste
        Application.CutCopyMode = False
    End If
End Sub
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33013977
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня такая ситуация. Открывается три книги, в одной книге надо отобрать строки , допустим "Ростов"... и "Москва"... (точки остальные поля в этой строке) и другие города с другого файла и поместить их в третий документ. Два файла из которых я беру данные никак не должны меняться, мне надо лишь взять из них данные, то есть комбобокс не подойдёт. Потом уже когда данные перенесутся в третью книгу, будет идти дальнейшая обработка данных, но там проблем нет, главное выбрать данные из первых двух книг
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014049
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, добавлю. Дело в том, что это ежедневный отчёт и просто отсортировать по городам и скопировать диапазон не получится. Данные поступают каждый день и количество записей для одного города может меняться. Количество городов определено и меняться не будет, допустим их 5. На сколько я понимаю, тут необходим цикл, который бы находил все записи по городу и копировал в Лист2. Помогите написать цикл для одного города плиз!
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014096
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sigizmund-8Допустим я выбрал автофильтром данные, как я могу скопировать их в другой лист
Код: plaintext
1.
2.
Range("A1:C1").Select
Selection.AutoFilter
Selection.AutoFilter Field:= 1 , Criteria1:="Ростов"
что нужно написать дальше?
делаешь обход через for each iRange in ... и проверяешь и проверяшь св-во irange.entirerow.hidden
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014100
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так создайте этот комбобокс в 3-ей книге и берите данные из первых двух.
Нужно немного подправить процедурку, чтобы она выделяла дипазоны не в текущей книге, а в нужной Вам. Здесь уже трудно что-то советовать не видя.
На первый Ваш вопрос я ответил:)
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014110
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
моя процедура и есть "цикл для одного города"
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014201
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А что значит?
Код: plaintext
1.
Run-time error '1004':
Невозможно получить свойство VLookUp класса WorksheetFunction
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014252
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
S = Application.WorksheetFunction.VLookup(Range("E3"), Range("I3:J5"),  2 )
В этой строке определяется выбранный в комбобоксе город. Это VBA -аналог функции ВПР().
У Вас какой Excel? У меня ХР.
Если так не работает, то попробуйте другим образом передать параметр в процедуру. Можно прямо на листе определять город, выбранный в комбобоксе и потом из этой ячейки брать текстовое значение.
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014455
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Без обид, но комбобокс тут ни как не поможет, дело в том, что данные должны выбираться каждый день и на автомате, в ручную это не поможет, меня уже напрягают по этому поводу:(
P.S.У меня Office 2000
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014460
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sigizmund-8А что значит?
Код: plaintext
1.
Run-time error '1004':
Невозможно получить свойство VLookUp класса WorksheetFunction

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

S = Application.WorksheetFunction.VLookup(Range("E3"), Range("I3:J5"), 2)

Здесь: Range("I3:J5") - указывает на диапазон, в котором создан список городов.
Range("E3") - указывает на ячейку, с которой связан комбобокс.
2 - номер столбца в диапазоне Range("I3:J5").

Все соответсвует рисунку из моего прошлого сообщения.

Sigizmund-8
Без обид, но комбобокс тут ни как не поможет, дело в том, что данные должны выбираться каждый день и на автомате, в ручную это не поможет, меня уже напрягают по этому поводу:(
P.S.У меня Office 2000


Да и хрен с ним с комбобоксом.
Придумайте другой способ передать параметр в процедуру.
Собственно, основной цикл реализует то, что Вам нужно...
Или я чего-то не понимаю:)
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014486
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А что значит?
Код: plaintext
1.
Run-time error '1004':
Невозможно получить свойство VLookUp класса WorksheetFunction
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014493
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sigizmund-8А что значит?
Код: plaintext
1.
Run-time error '1004':
Невозможно получить свойство VLookUp класса WorksheetFunction

я же писал:
kanalex
Вы, скорее всего, не поменяли диапазоны в тексте процедуры.

S = Application.WorksheetFunction.VLookup(Range("E3"), Range("I3:J5"), 2)

Здесь: Range("I3:J5") - указывает на диапазон, в котором создан список городов.
Range("E3") - указывает на ячейку, с которой связан комбобокс.
2 - номер столбца в диапазоне Range("I3:J5").

Все соответсвует рисунку из моего прошлого сообщения.


^)
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014551
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kanalex., Вы вроде парень умный... обьясните мне по пальцам, что к чему? Ya Ploho SoobraZhayu po inomu
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33014588
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sigizmund-8, а чем вам "Advanced Filter", или как он там по русски, не устраивает?

Делаешь таблицу своих городов обязательно с заголовком:

город номер текст
москва 56 ввв
москва 42 ппп
.....

Потом в другом месте делаешь таблицу критерия:
город номер текст
ростов
В первой строке ТОЧНО ТАКОЙ-ЖЕ заголовок как у исходной таблицы. Во второй строке указывешь то, что нужно отбирать.

Теперь идешь в главном меню, Data (Данные), Filter (Фильтр), самый нижний пункт будет Advanced Filter (Расширеный фильтр, наверное). Получаешь диалог. В нем выбираешь что хочешь копировать выборку в новое место. В первом поле выбираешь исходную таблицу (вместе с заголовком). Во втором поле выбираешь табличку критериев. В третьем указываешь куда надо копировать. Все три области могут находится как на одном листе, так и на двух, трех и хоть в разных книгах. Жмем Ok и получаем то что хотели.

На VBA это все выглядит так:
Sheets("Sheet1").Range("SourceRange").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Range("CriteriaRange"), CopyToRange:=Range("DestinationRange"), Unique:=False
Одна команда и ваши волосы будут шелковисты :)
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33015034
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sigizmund-8Kanalex., Вы вроде парень умный... обьясните мне по пальцам, что к чему? Ya Ploho SoobraZhayu po inomu
Давайте Вы еще раз сформулируете задачу поточнее. А то я отвечаю на один вопрос, а Вам оказывается нужно совсем другое.
Укажите все что Вам нужно: и три книги, и нужный уровень автоматизации, и пр. И хорошо бы примерчик.
Тогда можно будет о чем-то говорить.
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33015318
Sigizmund-8
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть три открытые книги:
Код: plaintext
1.
2.
Workbooks.Open Filename:="C:\tmp\Шаблон.xls"
Workbooks.Open Filename:="\\сервер\файл1.xls" ' откуда берутся данные
Workbooks.Open Filename:="\\сервер\файл2.xls" ' откуда берутся данные
Привожу реальные данные(кусок):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Program category	Date	         Weekday	TVCompany							
Ежедневные новости	 11 . 04 . 2005 	Понедельник	ПЕРВЫЙ КАНАЛ (МОСКВА)	
Ежедневные новости	 11 . 04 . 2005 	Понедельник	РОССИЯ (МОСКВА)	Местное время.	
Ежедневные новости	 11 . 04 . 2005 	Понедельник	РОССИЯ (МОСКВА)	Вести. 
Ежедневные новости	 11 . 04 . 2005 	Понедельник	НТВ (МОСКВА)	Сегодня вечером ( 22 : 00 )
Кинофильм	 11 . 04 . 2005 	Понедельник	СТС (МОСКВА)
Кинофильм	 11 . 04 . 2005 	Понедельник	ПЕРВЫЙ КАНАЛ (МОСКВА)
Кинофильм	 11 . 04 . 2005 	Понедельник	ПЕРВЫЙ КАНАЛ (МОСКВА)
Кинофильм	 11 . 04 . 2005 	Понедельник	РОССИЯ (МОСКВА)
Кинофильм	 11 . 04 . 2005 	Понедельник	ТНТ (МОСКВА)

Телесериал	 11 . 04 . 2005 	Понедельник	РОССИЯ (МОСКВА)
Телесериал	 11 . 04 . 2005 	Понедельник	ПЕРВЫЙ КАНАЛ (МОСКВА)
Телесериал	 11 . 04 . 2005 	Понедельник	ПЕРВЫЙ КАНАЛ (МОСКВА)
Телесериал	 11 . 04 . 2005 	Понедельник	ПЕРВЫЙ КАНАЛ (МОСКВА)
Телесериал	 11 . 04 . 2005 	Понедельник	РОССИЯ (МОСКВА)
Телесериал	 11 . 04 . 2005 	Понедельник	РОССИЯ (МОСКВА)

Далее идёт рейтинг и т.д.
Мне нужно выбрать строки, допустим "Телесериал" и скопировать в Шаблон.xls (Лист2), я делал без цикла, просто выделял диапазон и копировал программно в нужный мне лист, но количество записей по "Телесериал" (и по другим категориям) может меняться. Надо выбрать строки, где встречается слово, допустим "Телесериал" и скопировать в Лист2. Для одного дня, при выборе по ячейкам (Range) всё замечательно, но для следующего дня количество передач поменялось и получилась полная ахинея :(
Для всех категорий я сделал модули, где идёт работа с выбранными данными, потом их вызываю в главном, получается для каждой категории еужна выборка
Хочу сказать, что этот процесс будет в дальнейшем идти на автомате, то есть ежедневно и без участия пользователя, главное правильно написать код
P.S. Потом идёт сортировка по мах рейтингу и выбирается определенное количество записей по рейтингу, но в этом проблем нет
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33015837
kanalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
давайте в привате пообщаемся...
моя аська в Вашем почтовом ящике.
...
Рейтинг: 0 / 0
Выборка строк в Excel
    #33021484
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sigizmund-8Допустим я выбрал автофильтром данные, как я могу скопировать их в другой лист...
Отфильтрованные данные копируются на другой лист
То, почему этот лист называется Stepler, следует из контекста... :-)
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выборка строк в Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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