|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
|
Экспорт и последующий анализ данных spc09.09.2013, 16:41. Показов 8797. Ответов 126
Метки нет (Все метки)
приветствую!
программист я не очень)) но имеется желание облегчить себе жизнь) собственно суть: имеем файл базы данных spc (лог системы контроля параметров) во вложении, данный фаил содержит примерно сутки работы системы количество строк всегда 10002 количество столбцов при преобразовании может варьироваться необходимо: 1. наладить импорт из данного файла в таблицу Excel, ну или экспорт (с этим у меня пока самая большая проблема) предполагаю что в конечной таблице должна открываться юзерформа где можно указать путь к файлу из которого нужно взять данные при этом копируемые данные должны помещаться в начало листа 2.после переноса в основной файл должны ракладываться в нормальные столбцы и проверятся на ряд параметров : Во первых должны удалятся строки содержащие хотя бы одно 0 значение, во вторых в конце массива могут содержаться дубли уже внесенной ранее информции т.к. лог снимается вручную втретих нужно проводить проверку на наполнение листа т.е при достижении 1кк строк начинать новый лист. 3. на отдельном листе или в юзерформе создать группу графиков с изменяемым интервалом дат т.е забиваем дата/время начало-дата/время конец и получаем графическое отображение изменений данных параметров. собственно вопросы следующие: насколько это реализуемо средствами excel/vba как реализовать п 1. п.2 сейчас потихоньку делаю сам, хотя как конролировать наполнение листа тоже пока не представляю.
0
|
|
| 09.09.2013, 16:41 | |
|
Ответы с готовыми решениями:
126
Обработка множества документов word/pdf и последующий семантический анализ их содержимого
Поиск данных в текстовом файле и последующий вывод |
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 12.09.2013, 16:15 | |
|
А что я там должен увидеть? Там все грамотно написано и все у меня работает. Только с точками, но мне это как-раз хорошо.
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
|
| 12.09.2013, 16:30 [ТС] | |
|
Igor_Tr, это код toiai, добавлены те строки о которых я говорил ранее, с заменой 2х пробелов, добавлена сортировка в исходном CSV (собственно Ваш вчерашний код), осталось добавить контроль наполнения листа.
в этом коде используется очень сильное колдунство - csv раскладывается в столбцы магией excel и дополнительно обрабатывается только столбец А. Благодаря этому он корректно работает вне зависимости от системного разделителя, т.е. когда его запускаю я в разложенном CSV я вижу запятые.
0
|
|
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 12.09.2013, 16:47 | |
|
Кроме мелочевок - проблем не вижу.
1. Копируете диапазон. Посмотрите в моей последней книге. Я определяю, что копировать (нужно заголовки - если первый раз, и не нужно - если следующий). 2. Определяю точку вставки (тоже, если первый..., если дальше....) Вставляю, сортирую. У Вас сортировка открытого csv. Зачем? Там нам по барабану. Нам сборка главное. Получается - отсортировали csv, вставили. Другой раз - отсортировали csv, вставили новые данные, и вот теперь точно нужно сортировку всего. Получается первая не нужная. Понимаете? 3. Нужно отформатировать первых два столца. 1-й как дату, 2- время. И все. Если еще у Вас и с запятыми - все нормально. Можно подписывать капитуляцию.
0
|
|
|
3218 / 967 / 223
Регистрация: 29.05.2010
Сообщений: 2,087
|
|
| 12.09.2013, 16:58 | |
|
Работа окончилась, могу предложить вариант решающий проблему со временем, немного исправленный предыдущий вариант.
1
|
|
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 12.09.2013, 17:08 | |
|
Да я вот и не понял, что там за проблемы были с датой. У меня и Ваш и мой варианты работали на ура. Одно что дату я не колол. Но это без проблем.
0
|
|
|
3218 / 967 / 223
Регистрация: 29.05.2010
Сообщений: 2,087
|
|
| 12.09.2013, 17:13 | |
|
Были проблемы со временем (выводилось в 12-и часовом формате после разделения колонки "Дата/время" с помощью текста по столбцам с использованием разделителя ПРОБЕЛ) -присмотрись на результаты предыдущей и текущей версии.
0
|
|
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 12.09.2013, 17:37 | |
|
Это возможно, я смотрел общий ход кода, до разделения даты. Но даже если. Сделал график по 12 часовому (загнал, правда, свои данные). Все нормально.Перешел только на время (ф. [h]:mm AM/PM). Все нормально. И какая тогда разница какой формат? Если главная программа так выдает - ну и пусть. И думаю, может там опять что-то типа последнего столбца #20?
Ну а если начальство не понимает - так кто им психиатр?
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
||||||||||
| 13.09.2013, 11:56 [ТС] | ||||||||||
а вообще я уже ранее говорил можно копировать с шапкой всегда, ее все равно убьет как дубль, а если не убило то видно что косяк есть.
вообще я пытался сделать сортировку в конечном файле (кстати при разбивке первого столбца сортировать нужно по 2м столбцам дата и время же разнесены) но на меня .Sort простоянно ругался разными еррорами так что он пока не доделан, ну и меня несколько напрягает мысль сортировать миллион строк.
там же вроде так и есть
toiai, решение намного проще оказалось)) достаточно было отказаться от разделителя вообще, и делить на столбцы определенной ширины. интересно то что при пошаговом прогоне видно при открытии CSV видно что время в 24ч после разложения на столбцы переходит в формат 12 ам/рм при переносе в конечный фаил снова 24ч формат форматировние во всех ячейках отсутствует в исходном CVS(неразложенном) дата кстати в формате 12 ам/рм
0
|
||||||||||
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 13.09.2013, 12:11 | |
|
В воскресенье обещают дождь - сяду и сделаю все по другому, с автоматической заменой разделителя к нужному и т.д. (как для наших бухгалтеров).
Шапка - это слишком мелочь. Она может создаваться, модифицироваться.... на ходу. Мы сейчас делаем общее. А сменится у Вас формат подачи csv - предварительная шапка если не убет - то перекрутит. В таких случаях с моими дукументами шапки использую как индикаторы тех или других действий. Получается слишком жестко, а жесткость должна быть в пределах, позволяющих легко менять при изменениях (ну как в сейсмике ) Все таки я бы применял промежуточный лист-приемник. На нем делал все увязки/привязки к нужному, потом на основной лист сборник. Вы же еще и стараетесь застраховаться от перезаполнения (эти Ваши явно указанные цифры).Меня больше другое интересует. Почему я с своим Excel вытворяю, что хочу - и у меня все коректно? Так и у toiai, как я понял. А у Вас не так.
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
|
| 13.09.2013, 12:21 [ТС] | |
|
Igor_Tr,
Последние коды у меня нормально работают и Ваш и toiai, проблема со временем в кранем файле тоже решена. была проблема с кодом при переносе модуля из одного файла в другой, с чем она связана не знаю но в общем это делать то и не обязательно можно же копию создать)) не должна шапка меняться, набор параметров отселживаемых стандартен должен быть, если он поменяется значит сменилась продукция следовательно это уже хранится отдельно должно.
0
|
|
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
||
| 13.09.2013, 12:24 | ||
|
Думаю, не помешает вставить в код команду (сразу после названия макроса):
0
|
||
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 13.09.2013, 22:23 | |
|
Все-таки было немного времени. Накомбинировал. Оставил приемник. Там удаляем, колем дату, добавляем столбик....Все массивом на основной. На основном сортирумем (!!! descending !!! от "сейчас" до "позавчера") Если на основной лист добавляем следующий csv - проверяем заголовки. Несовпадают - сообщение и остановка. Хотел сразу останавливать, потом подумал, что нужно оставить на приемнике, что б можна было разбираться.
Заголовки формируем на ходу. Вид зависит от первого csv. Формат 24. И учитывает системный разделитель. Пробуйте, у меня работает. Может не так быстро - но там куда всяких движений, которые не считаю лишними.
1
|
|
|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
|
| 16.09.2013, 13:25 [ТС] | |
|
Igor_Tr, все работает, но при анализе второго csv некорректно работает сортировка
0
|
|
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 16.09.2013, 13:51 | |
|
Смотрю по коду - вроде нормально. В чем проявляется некоректность? Я там поставил xlDescending. Может, Вам нужно xlAscending?
И еще. Поигрался через запрос + максимум обработки в массивах. Даже с промежуточным листом и всеми заморочками - время до 3 сек. Но вылезла одна мааааленькая проблемка, которую я обошел лишними движениями, что мне не нравится. Пока разбираюсь сам, не получится - спрошу здесь у людей. А будет готово - скину в любом случае. Хоть так, для информации.
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
|
| 16.09.2013, 13:57 [ТС] | |
|
Igor_Tr, на картинке видно что промежуток 09.09 19:28:44 до 09.09 23:59:59 оказался в начале суток т.е. дальше пошло с 00:00:00 15102 и 15103 строки
0
|
|
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
||||||
| 16.09.2013, 14:08 | ||||||
|
На Вашем скине я не вижу эти строки. Почему-то...
А вобще, сортировка только по дате. Думал, что у Вас csv - как итог за какой-то период, и в другом csv будут другие даты. А так, если сортировать и по дате - тогда сортировка должна выглядеть где-то так:
1
|
||||||
|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
|||
| 16.09.2013, 14:19 [ТС] | |||
|
Igor_Tr, смены меняются в 8:00 и в 20:00 так что сутки у нас не как у всех нормальных людей
а с 8:00 до 8:00 + там еще хвост из дублей болтается, отчетные периоды накладываются.Добавлено через 3 минуты 15602 и 15603 ![]()
0
|
|||
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 16.09.2013, 14:23 | |
|
Где-то здесь я Вас предупреждал, что если будете строить график только по времени, и использовать период, например, с 19:30 (это 8.10.12) по 19:45 (это уже 9.10.12) - могут быть проблемы. Счетчик времени!!! в 00:00:00 обнуляется. Нужно приводить к формату [hh]:mm:ss (внимание на скобки).
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2013
Сообщений: 66
|
|
| 16.09.2013, 14:28 [ТС] | |
|
если руками строить то все нормально строится
0
|
|
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|
| 16.09.2013, 14:34 | |
Вы не поняли. Здесь у Вас время привязано к дате. Тогда все нормально. Если оторвать время от даты (указывать только время!) - вот про это я предупреждаю.![]() Похоже на "кардио" у "не жильца"
0
|
|
| 16.09.2013, 14:34 | |
|
Чтение из файла данных и последующий вывод на экран в виде линейного однонаправленного списка Копирование строки. При вводе пробела программа пропускает последующий ввод данных
Как сделать экспорт данных из таблицы базы данных MSSQL 2008 в Excel на php? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|