|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
|
Ошибка в коде для Excel. Копирование строк на лист по критериям15.06.2020, 23:08. Показов 3792. Ответов 38
Метки нет (Все метки)
Уважаемые, форумчане! Помогите, пожалуйста, совершенно не знающему человеку. Нашла на форуме примерно то что нужно, но довести до ума не получается...
У меня задача такая: из листа "2020" перенести строки на лист "Май", если в столбце Е (гип) = Барашков и если в столбце AD (чистое май) <>0; остальные строки никуда копировать не нужно, только те, что подпадают под критерии; и если возможно, то копировать строку не целиком, а только столбцы A,b,c,E и AD
0
|
|
| 15.06.2020, 23:08 | |
|
Ответы с готовыми решениями:
38
Excel копирование определенных ячеек и строк на другой лист Макрос для копирование данных из таблицы word на лист excel
|
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
||||||
| 15.06.2020, 23:15 [ТС] | ||||||
0
|
||||||
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
|
| 16.06.2020, 16:31 [ТС] | |
|
Ну несколько дней точно есть. Спасибо, что откликнулись...
0
|
|
|
Наивное Существо
|
||||||
| 16.06.2020, 22:13 | ||||||
Сообщение было отмечено olga_eg как решение
Решение
Ответ на вопрос olga_eg от 15.06.2020
ПОЯСНЕНИЕ: 1. Проект протестирован. 2. МИНУСЫ - куча. 3. На листе <2020> - добавлена кнопа в виде автофигуры (множество листов в пакете) в ячейке В1-2 для лёгкого старта макроса - нажать на неё, и он выполнится. 4. Функцианально в программе добавлено два вопроса задания месяца (название листа МАЙ, куда копировать) и задания фамилии для поиска (барашков или любой другой) Думаю, что такой функцианал проги Вам понравится/ Если же нет, то надо сделать следующее: строки 8 и 9 8. mes$ = InputBox("Ввести месяц, куда копировать данные:") 9. fio$ = InputBox("Ввести ФИО:") поставить апострофы, а строки 11 и 12 11. 'mes$ = "Май" 12. 'fio$ = "барашков" убрать апострофы, и тогда будет всегда по умолчанию. 5. Всякое форматирования листа МАЙ, "шапка", всякие другие сервисы - делайте сами или спрашивайте - потому что в задании ничего не сказано про это. 6. код написан максимально коротко, с пояснениями некоторыми, надеюсь, разберётесь...если что, спрашивайте. ИНСТРУКЦИЯ: макрос запускается с текущего активного листа <2020>, нажав на кнопку СТАРТ сиренового цвета, или вызвав на выполнение макрос под названием olgaVibor. Он находится в MODULES. прилагается таблица. план 2019_makros.rar Пока всё. Учтите, что у вас в колонке АD всё по нулям задано. Мне пришлось искуственно изменить две ячейки ноль на значения для проверки макроса.
1
|
||||||
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
|
| 16.06.2020, 23:10 [ТС] | |
|
ОГРОМНОЕ спасибо! Да, по форматированию и шапке упустила. вижу теперь... Помогите, пожалуйста, завершить.
![]() форматирование и шапка как в исходном файле
0
|
|
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
|
| 18.06.2020, 01:17 [ТС] | |
|
А как здесь прописать, чтобы данные при повторном выборе этого месяца и этого гипа (на листе куда копируется) сначала чистились, а потом копировались новые? на случай редактирования исходного файла
0
|
|
|
Наивное Существо
|
|
| 18.06.2020, 20:46 | |
|
olga_eg, всё получилось, только флешка осталась на работе ((((
Но если для ускорения, и вы сможете разобраться, то примените три строки Sheets(mes$).Delete 'удалить лист Sheets.Add 'добавить лист Sheets("Лист2").Name = mes$ 'переименовать лист2 на имя из переменной, но здесь может быть 'не лист2, а лист5 - и будет ошибка после вопросов о названии месяца и ФИО Но здесь могут возникнуть ошибки, если например, изначально нет листа, и другие подобные нюансы. А можно очистить через диапазон, но это на флешке.
0
|
|
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
||||||
| 18.06.2020, 23:54 [ТС] | ||||||
|
Спасибо. Я все-таки подожду Вашу флэшку)
Все-таки нужен диапозон, нужна же шапка таблицы. У меня в принципе очищать его получается, но видимо я не туда это прописываю, потому что перестает все остальное работать, видимо рабочий лист сбивается, или еще что-то. Я вообще VBA всего несколько дней изучаю для этой цели. Поэтому для меня это почти как темный лес. Подскажите, пожалуйста, еще такой нюанс: если я файл сохраняю не на исходном листе, почему-то перестает работать, в противном случае - все ок. Может нужно как-то прописать, чтобы при сохранении переход был на этот лист, или при выполнении макроса сначала был этот переход? Добавлено через 5 минут Пока я подредактировала так:
0
|
||||||
|
Наивное Существо
|
||||||||||||||||
| 19.06.2020, 02:32 | ||||||||||||||||
|
Я так понимаю, что вы в зависимости от месяца ищите своё "ЧИСТОЕ" = stolbMes%.
Предлагаю сделать предварительную настройку экселя, и Вам станет легче считать колонки - они сами покажут свой номер колонки: в самой таблице (можно на любом листе, но лучше на "2020", чтоб вы привыкли к мысли -лист "2020" - ваш главный лист) выполнить: 1. Сервис 2. Параметры 3. Общие 4. Стиль ссылок R1C1 поставить в квадратике "галку" - то есть включить её. 5. После этого все настройки закрыть. В результате этого у вас изменится внешний вид таблицы: вместо подписей колонок A B C D E .... AA AB .... появятся числа 1 2 3 4 5 6 ..... 121 ... то есть теперь вместо "А5" (к примеру) будет называться "15" И запомните! такой вид будет и во всех остальных книгах - предыдущих и будущих. Но это НЕ ВЛИЯЕТ на расчёты! - просто другой внешний вид, который легко изменить на старый через параметры - выключить стиль R1C1 - убрать "галку". Хочу заметить, что у меня эксель 2003 (и более в старых). В более современных может настройка быть чуть другая (не помню) - но смысл тот же. Тогда у вас получится (если я правильно понимаю вашу мысль)
По очистке: жалко, что вы не показали код по очистке ((((( По сохранению файла и действия при его открытии: вы правильно предположили. если вы сохранили на другом листе, потом заходите - у вас показывается другой лист. А макрос работает в привязке с листом "2020". Поэтому вам просто надо после открытия переходить на лист "2020". Но это легко настраивается автоматически. в программе в модуле "Эта книга" в разделе объявления модулей вместо "General поставить WorkBook и вас появится две строки Private Sub Workbook_Open() End Sub а теперь добавьте
И для полного счастья (на этот момент) добавим эту же строчку Sheets("2020").Activate в нашу исходную программу в самое начало:
Похоже - вы еще так не делали ))))) В этом случае сначала идет активация листа "2020", то есть переход на него , а потом уже выполнение всего остального кода. Вот теперь Вы всегда "привязаны" к листу "2020". Эхххххх
1
|
||||||||||||||||
|
Наивное Существо
|
||||||
| 20.06.2020, 12:48 | ||||||
|
olga_eg, принимайте вариант 2 (с вашими доработками):
план 2019_makros2.rar
предложено два варианта: 1. Через удаление всего листа (с проверкой на наличие - добавлен обработчик ошибок), и вставка нового листа с нужным названием. Такой вариант позволяет не задумываться о всяких диапазонах. 2. очистка через диапазон. Но здесь возможна ситуация, если внутри БД будет пустая строка - то будет НЕКАЧЕСТВЕННАЯ очистка диапазона. Конечно, можно и это предусмотреть.Но будет увеличение кода. Сейчас включен ВАРИАНТ 1. Если выберите ВАРИАНТ 2 - то ВАРИАНТ 1 удалите или закомментируйте (поставить кавычку), а ВАРИАНТ 2 - раскомментируйте(убрать кавычку) Хотелось бы узнать ваше решение по очистке - чтоб знать веяние моды. Прилагаю результат в виде конечной таблицы (с другой фамилией для чистоты эксперимента). Всё.
1
|
||||||
|
Наивное Существо
|
||
| 20.06.2020, 18:10 | ||
|
vedunasv - (идёт тест)
,![]() ,![]() , ,![]() ,![]() не зачтено... Добавлено через 16 минут
0
|
||
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
|
| 21.06.2020, 14:59 [ТС] | |
|
Здравствуйте. Просмотрела все. ОГРОМНОЕ ВАМ СПАСИБО. Немного отредактировала под себя. Пыталась пойти дальше по своим запросам. Но опять в ступоре))) Помогите, пожалуйста, понять: что не так. Файл приложила. Суть там такая: чтобы из тех данных, которые выбираются на отдельный лист, формировались таблицы. Под каждую строчку - новая таблица. Крутила и так и этак - никак, то таблица одна, а объекты все, то наоборот....
0
|
|
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
|
| 21.06.2020, 16:18 [ТС] | |
|
В формате .zip
0
|
|
|
Наивное Существо
|
|
| 21.06.2020, 16:26 | |
|
olga_eg, а можете показать - КАК ДОЛЖНа выглядеть таблица отчёт? Почти вижу картинку - но неясно.
Я так понимаю, форма "ФормаЗП" у вас в порядке? Или эта форма должна появиться на листах "майшиман" и остальных? Сейчас она где-то сбоку справа внизу... Надо просто мне ручной образец. Или хорошо опишите. И всё разрешится...
0
|
|
|
0 / 0 / 0
Регистрация: 15.06.2020
Сообщений: 17
|
|
| 21.06.2020, 17:42 [ТС] | |
|
Подробнее:
0
|
|
| 21.06.2020, 17:42 | |
|
Помогаю со студенческими работами здесь
20
Копирование строк в другой лист
Выборка строк и копирование на новый лист Копирование строк на другой лист книги по условию Копирование на новый лист строк, с одинаковых днями Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|