Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Написание макроса для обработки/сокращения столбца чисел. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин  
Мир MS Excel » Работа и общение » Работа / Фриланс » Написание макроса для обработки/сокращения столбца чисел. (сократить число ячеек в столбце данных)
Написание макроса для обработки/сокращения столбца чисел.
viktorsu Дата: Суббота, 06.06.2020, 00:04 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Доброго времени суток,

описание постановки задачи:
Есть такие столбцы чисел. В первом столбце идет время (это значения по горизонтальной оси). Дальше идут колонки (значений для вертикальных осей). Таких колонок может быть несколько.

Проблема: значений очень много. Намного больше, чем, чем нужно для описания графика. То есть время меняется всегда, а значения могут.

Решение, как я вижу: нужно сократить число ячеек.

Теоретический пример.
Есть прямая. Для описания прямой достаточно только двух точек. А точек не две а 10 000. Макрос должен работать так. Считывает первые две точки (время и сами значения). Макрос сравнивает два значения. Если значения одинаковые или отличаются меньше, чем на заданную величину, то макрос выбрасывает вторую точку и считывает третью. Если значения первой и второй точки отличаются, то макрос сохраняет обе точки рядом справа (справа). Так макрос переберет все 10 000 значений, и если это прямая линия, то оставить только две точки и сохранит их рядом.

Сколько будет стоить написание такого макроса и время. Пожалуйста в личку. А вопросы по заданию лучше в форум.

Ниже два реальных примера.

Второй пример посложнее. Там нужно дополнительно сделать предварительные шаги.
1. Дату вообще удалить.
2. Запись в примере 2 идет не с начала файла, а с конца (начальное время не в начале файла, а в конце). Нужно переписать наоборот.
3. Время перевести в формат секунд. Эксель не может воспринимать формат часы:минуты:секунду:милисекунды. Поэтому нужно время перевести в секунды. Тогда будет нормально. И для удобства начальный момент времени взять ноль.
Исходный файл (фрагмент, конец):
28-Dec-1960 08:06:47.05101 24.46
28-Dec-1960 08:06:47.02501 24.52
28-Dec-1960 08:06:47.00101 24.62
28-Dec-1960 08:06:46.97501 24.78

Полученный файл (этот же фрагмент, начало нового файла или в экселе рядом)
0.97501 24.78
1.00101 24.62
1.02501 24.52
1.05101 24.46
К сообщению приложен файл: Primeru.zip (3.7 Kb)
 
Ответить
СообщениеДоброго времени суток,

описание постановки задачи:
Есть такие столбцы чисел. В первом столбце идет время (это значения по горизонтальной оси). Дальше идут колонки (значений для вертикальных осей). Таких колонок может быть несколько.

Проблема: значений очень много. Намного больше, чем, чем нужно для описания графика. То есть время меняется всегда, а значения могут.

Решение, как я вижу: нужно сократить число ячеек.

Теоретический пример.
Есть прямая. Для описания прямой достаточно только двух точек. А точек не две а 10 000. Макрос должен работать так. Считывает первые две точки (время и сами значения). Макрос сравнивает два значения. Если значения одинаковые или отличаются меньше, чем на заданную величину, то макрос выбрасывает вторую точку и считывает третью. Если значения первой и второй точки отличаются, то макрос сохраняет обе точки рядом справа (справа). Так макрос переберет все 10 000 значений, и если это прямая линия, то оставить только две точки и сохранит их рядом.

Сколько будет стоить написание такого макроса и время. Пожалуйста в личку. А вопросы по заданию лучше в форум.

Ниже два реальных примера.

Второй пример посложнее. Там нужно дополнительно сделать предварительные шаги.
1. Дату вообще удалить.
2. Запись в примере 2 идет не с начала файла, а с конца (начальное время не в начале файла, а в конце). Нужно переписать наоборот.
3. Время перевести в формат секунд. Эксель не может воспринимать формат часы:минуты:секунду:милисекунды. Поэтому нужно время перевести в секунды. Тогда будет нормально. И для удобства начальный момент времени взять ноль.
Исходный файл (фрагмент, конец):
28-Dec-1960 08:06:47.05101 24.46
28-Dec-1960 08:06:47.02501 24.52
28-Dec-1960 08:06:47.00101 24.62
28-Dec-1960 08:06:46.97501 24.78

Полученный файл (этот же фрагмент, начало нового файла или в экселе рядом)
0.97501 24.78
1.00101 24.62
1.02501 24.52
1.05101 24.46

Автор - viktorsu
Дата добавления - 06.06.2020 в 00:04
vikttur Дата: Суббота, 06.06.2020, 11:29 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Для "работовзятелей" - проверяйте тему на Планете и у Щербакова
 
Ответить
СообщениеДля "работовзятелей" - проверяйте тему на Планете и у Щербакова

Автор - vikttur
Дата добавления - 06.06.2020 в 11:29
viktorsu Дата: Суббота, 06.06.2020, 15:34 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Уважаемые коллеги,

всем большое спасибо.

Макрос уже пишется.

С уважением
В.
 
Ответить
СообщениеУважаемые коллеги,

всем большое спасибо.

Макрос уже пишется.

С уважением
В.

Автор - viktorsu
Дата добавления - 06.06.2020 в 15:34
Мир MS Excel » Работа и общение » Работа / Фриланс » Написание макроса для обработки/сокращения столбца чисел. (сократить число ячеек в столбце данных)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!