Подскажите пожалуйста, есть ли возможность в Excel 2016 загрузить данные из CSV файла, содержащего более миллиона записей (которые уже в Excel дадут 6 млн строк и 7 столбцов), при этом естественно переходить на следующий лист после заполнения 1 048 576 строчки.
Коллеги приветствую! Требуется реализовать проект в Ексель:
Учет заказов в машиностроении. Выполнение договорных обязательств по изготовлению изделий для заказчика. В идеале весь жизненный цикл продукции – от закупки материалов для этих изделий до её реализации в запланированные сроки. Не проектирование. Совместный доступ - не требуется. Файл для одного – трех пользователей, работа по очереди. Нужен простой пользовательский интерфейс для сотрудников (добавление заказов, отгрузка продукции, расчёт материалов на основании уже известных норм, отчетность и т.п.).
Долго делал и вел всю эту работу собственными скромными силами – очень сырая автоматизация для одного опытного пользователя (меня). Сейчас требуется нормальный продукт, для не очень опытных пользователей и отпустить эту работу в свободное плавание.
Подробности и бизнес-процессы опишу в личку. Покажу как делал сам. Желательно сразу иметь представление о примерной стоимости подобного проекта.
Конечно, предпочтительней для меня будет опытный специалист с репутацией . В Идеале чтобы можно было встретиться (СПБ) или с возможностью общения по скайпу.
Добрый день. У меня возникла необходимость составить алгоритм автоматизации подсчета материалов для сборочных единиц (машиностроение). Так как уровень вложенности сборок и "подсборок" может быть очень большой, имеет место куча модификаций и повторений материалов - решил что разумно будет держать все одним простым списком, в котором буду описывать иерархию "входимостей", дабы не плодить повторов и простыней в описании (как примере). Проиллюстрировал с домами (чтобы сразу было понятно что внутри чего находиться).
Моя цель - разобрать каждую составляющую (разного уровня) на материалы (розовым цветом). В примере я эту задачу решил (как мог, код во вложении), но хотелось бы: 1. Уйти от лишних движений, может кто делал нечто подобное и предложит свое решение (не очень сложное). 2. Не вызывать процедуру несколько раз как у меня. 3. Да и в принципе узнать как правильно решать такие задачи (как то они ведь называются? А может мой подход в хранении данных неверен?).
Коллеги, подскажите, есть ли у кого опыт внедрения «систем управления задач» в небольших организациях? Перешерстил Рунет, предложений очень много от простеньких и полностью бесплатных, до многофункциональных CRM, а вот с информацией о результатах приживаемости и внедрения в коллективах гораздо хуже…
По сути ОСНОВНЫЕ запросы к возможностям очень просты: постановка задач и создание мини проектов, закрепление за исполнителем, сроки, учет, контроль, общий календарь событий, отчеты о проделанной работе, удобный поиск.
Требования к системе: 15-20 человек вместе с руководителями. Производство, НЕ разработка! WEB интерфейс и кроссплатформенность приветствуется! Конечно защита и шифрование Основное же требование – простота использования, для людей со знанием компьютера от уровня «написать письмо в Word»
Интересует прежде всего опыт внедрения конкретных продуктов в описанной нише – буду очень признателен если поделитесь опытом, возникшими трудностями, мнением.
По работе мне необходимо формировать однотипные документы и отправлять их по почте. В 2010 появилась очень удобная возможность – экспортировать данные в PDF формат. Решил использовать именно её, мне кажется - очень удобно. В приложенном упрощённом примере я через цикл перебираю данные в листе «База», соответственно вставляю данные в лист «ТИТУЛ», генерирую PDF файлы. Один файл – одна страница.
Одна беда, сколько строк с данными - столько файлов. Если много – не очень удобно в последствии открывать каждый из PDF(в среднем из 20 файлов и печатать).
Возможно ли програмно запихнуть все страницы в один PDF файл в моём случае?
Можно конечно при каждом проходе цикла генерировать «портянку» - копировать на отдельном листе Ексель листы для печати один под другим, генерировать многостраничный PDF, затем удалять лист. Но может можно проще?
Спасибо.
P.S. Файл в формате Ексель 2003, но работать код будет.
Здравствуйте Возник вот следующий вопрос по "таблицам" (средство в 2007 и 2010): Имею несколько листов с одинаковой структурой данных, но с разным количеством строк. Преобразовываю данные в них в "таблицы" (вставляю таблицы), в одном из листов к каждому столбцу применяю дополнительное форматирование данных. Получаю пользовательское форматирование "таблицы". Возможно ли быстро и в точности применить это форматирование таблицы к таблицам на других листах? Спасибо.
Здравствуйте! Примерно год назад задавал подобный вопрос, получил ответ что по данному глюку решений нет... Может решение появилось? Екс 2010, веду базу, 5 однотипных по организации данных листа, в каждом соответственно часть столбцов с числовыми данными с общим форматом, часть как дата, часть как число. В старом файле регулярно самопроизвольно слетал формат (при открытии) у ячеек с числовыми данными с числового и общего на "дата". Решения не нашёл. С нового года потратил время, создал абсолютно новый файл и аккуратно скопировал только значения из старой базы. В начале было всё нормально, и вот на тебе, опять всё слетело на даты... :( Конечно можно записать код с принудительным форматированием данных и при открытии, но не хочется такими методами. Может кто сталкивался, есть ли решение?
Доброй времени суток Форумчане. Делаю Юзер-Форму, часть её назначения - сборка данных с разных листов. Листы выбираются Чек-Боксами, соответственно если стоит птичка - с указанного листа данные собираются, если не стоит - нет. Пока сделал отдельный макрос по сборке с переменной в имени листа, который вызывается из UF в соответствии с проставленными птичками. А как "запихнуть" всё в одну процедуру в теле КоммандБуттон и избавиться от отдельного макроса не соображу, а очень хотелось бы. Направьте пожалуйста! Спасибо!
Что называется век живи век учись! Всем известно про замечательное средство EXCEL "специальная вставка", а я вот только сейчас узнал и поэкспериментировал со случаем, когда с диапазоном производиться "операция" не с заранее скопированной ячейкой с "константой", а с ячейкой содержащей "формулу".
есть диапазон 1,2 ... N скопирована ячейка с формулой, допустим =ЕСЛИ($M$2<>"";1;2) умножаем наш диапазон с помощью специальной вставки - умножить, получаем: =1*(ЕСЛИ($M$2<>"";1;2)), =2*(ЕСЛИ($M$2<>"";1;2))... =N*(ЕСЛИ($M$2<>"";1;2))
Круто, так можно делать сколько угодно, автоматически создаётся "МЕГАФОРМУЛЫ" в копируемом диапазоне.
Конечно формула в итоге получается не оптимальной, да и скобки размножаются безбожно но в ряде случаев думаю весьма полезное свойство:)
Здравствуйте Уважаемые Форумчане Прошу помочь разобраться Пару месяцев назад написал для себя код с простым циклом для формирования отчётности, работает, но тормозит на большом объёме... Слышал умные люди говорят что массивы быстрее бегают Однако доделать до конца не получается... Прилагаю упрощённый файл с кодом как было и свои потуги переписать с использованием массивов Мои Вопросы в теле кода Спасибо
На работе попросили помочь в формировании случайных цен, в заданном диапазоне (коридоре) от базовой цены. Сначала решил, что легко справлюсь. Затем понял что задачка не такая простая как показалась сначала. Пока мой алгоритм далеко не "случаен", а результат далеко не всегда соответствует условиям. Может у кого есть мысли по поводу реализации? Подробнее в примере. Спасибо!
Приветствую Форумчане. Занимаюсь шаблонизированнием документов. Хотел, чтобы информация о ширине столбцов и высоте строк была интерактивна, для чего записал функцию:
Function WidthRange(V As Range) Application.Volatile True WidthRange = V.Width / 0.75 End Function
Есть несколько вопросов: 1. Туплю, не могу додуматься, как в моей функции избавиться от аргумента, чтобы он брался из самой ячейки, куда она вставлена, как в функции рабочего листа «строка(), столбец()»? 2. Почему в ВБА и в Ексель есть разночтения в подсчёте пикселей ширины столбцов (например на рабочем листе показывает 40, функция выдаёт 30, а с высотой строк всё одинаково)? 3. Какое событие использовать на изменение ширины (высоты) столбца (строки) для пересчёта функции?
Здравствуйте Ув. Форумчане! Подскажите, в какую сторону смотреть? Давно хочу автоматизировать процесс:
Есть данные о поступивших заготовках. Есть данные о произведённых продажах изделий из этих заготовок. Требуется узнать, из каких заготовок (дата и № документа) было сделано изделие.
Естественно дата продажи изделия не может быть раньше чем даты поступления заготовки на неё.
Заранее прошу извинения за корявое название темы, суть следующем:
Для формирования отчёта при помощи VBA формирую сводную, затем вставляю значения на лист "Отчёт". (Отчёт в дальнейшем будет сохранён в отдельную книгу и отправлен руководству). С этим всё в порядке.
Для дальнейшего форматирования Отчёта с помощью VBA хочу програмно определить тип данных в отчёте (будет применено разное форматирование). Хочу сделать при помощи имён (диапазонов). Сейчас имена диапазонов: ПОЛЕ_СТОЛБЦОВ, ПОЛЕ_СТРОК, ПОЛЕ_ДАННЫХ соответствуют полям в сводной таблице и заданы в ручную. (Так же определены итоги по строкам и столбцам)
Вопрос: Можно ли програмно обратиться к сводной таблице и определить её текущее состояние (то есть на конкретный момент какие поля, в какой области заданны) и програмно перенести по аналогичной схеме имена диапазонов в Отчёт. Макет сводной (кол-во полей в строках, столбцах) может меняться в зависимости от назначения отчёта!
Если это важно, то на момент обращения к сводной 1. Отчёт сводной будет строго в табличной форме (не в структуре) 2. Промежуточных итогов не будет
Творю код для формирования сводной. В области строк (xlRowField) будет шесть значений. По умолчанию В Ексель стоит автоматические итоги по строкам. Эти итоги не нужны. В настойках самой сводной эту опцию убрать нельзя. При записи макроса по их удалению получается код, где "Subtotals = Array(первое True отвечающие за автом. итоги меняется на False ", остальные 11 и так по умолчанию false) Писать 6 раз эту строчку как то некрасиво. Пробовал убирать Array в обращении к итогам - не вышло. В общем прошу помочь оптимизировать код. А может вообще можно одной строкой убрать итоги по всем xlRowField. Спасибо. Кусок кода привожу:
Есть лист, в нём, допустим 1000 строк, 15 столбцов (пока). Решил для себя что оптимальным решением отображать доп. инф. - будет заносить её в примечания. Так вот, как скажется на производительности и стабильности работы приложения (в основном фильтрация, сортировка, сводные), в режиме "отображать при наведении курсора на ячейку", если в одном из столбцов в каждой строке будет примечание (10-100 символов)?
Не подскажите, кто знает, наименования шрифтов, аналогичных по свойствам "Courier New", то есть что бы ширина всех символов была одинакова. И есть ли такие?
Возможно ли только для ПРИМЕЧАНИЙ назначить ИНОЙ тип ШРИФТА по умолчанию (для всех книг при открытии), чем выбранный в параметрах Ексель при создании новых книг? Нигде не нашёл.
Здравствуйте уважаемые Форумчане! Возник вопрос следующего характера: Допустим есть диапазон с применённым УФ. Можно ли с помощью VBA скопировать УФ по текущим значениям ячеек в этом диапазоне и "вернуть" этим ячейкам форматирование уже в обычном виде? Спасибо.
Столкнулся с такой проблемой: В один "прекрасный" момент, сегодня при открытии рабочего файла обнаружил, что все ячейки с числовыми данными в некоторых листах были самопроизвольно переформатированы как "дата". Это произошло так же в некоторых отчётах сводных.
ЭКС 2010, формат файла XLSM.
С чем это может быть связано, что дальше можно ждать и стоит ли спасать свои данные???
Возник (не прикладной пока) вопрос: Существует ли в Excel возможность получить в каком либо виде последовательность простых (натуральных) чисел, то есть чисел которые делятся без остатка только на себя и единицу (1,2,3,5,7,11...)? Например функция аргумент - порядковый номер такого числа, возвращаемое значение - само простое число. (1-1) (2-2) (3-3) (4-5) (5-7) Или это чисто математический вопрос? Поиском ничего не нашел. Спасибо.
Здравствуйте уважаемые Форумчане! Макрорекордером записал макрос для копирования формул и вставки их значений. Но хочу, чтобы каждый раз макрос работал только с реально заполненными данными (то есть до последней заполненной строки). Нашёл на форуме функцию для поиска последней заполненной строки, попытался создать свою переменную на её базе, определяющую границу диапазона для вставки формул (нижнюю правую). Вроде как в msgBox её показывает правильно, а в макросе выдаёт ошибку … Бьюсь уже несколько часов, без нужных знаний сложновато. Как правильно это сделать, где ошибка? Файл с кодом прилагаю. Спасибо.
Здравствуйте уважаемые Форумчане! Возникла необходимость кодом удалить все листы из книги кроме «зарезервированных (нужных)», то есть допустим в книге есть 3 «зарезервированных» листа «База; Отчёт1; Отчёт2» и любое другое кол-во не зарезервированных (не нужных) листов с неизвестными нам пока именами. Прошу подсказать код, который прошурудит и удалит все листы из книги, кроме зарезервированных. P.S. Просьба появилась из-за неумелого обращения со сводными таблицами удаленных коллег (как известно при двойном щелчке в области данных каждый раз создаётся лист с выборкой) Прислали сейчас файл, где наплодили 25 листов... Спасибо.
Подскажите пожалуйста, возможно ли записать формулу (возможно нужна формула массива??), которая сможет сцепить построчно диапазон данных в столбце, заданных повторением данных в соседнем столбце.
Здравствуйте уважаемые Форумчане! Подскажите пожалуйста. Не могу разобраться... Связка =ИНДЕКС(Таблица1[#Все];ПОИСКПОЗ(A2;Таблица1[Номер];0);5) (с использованием в качестве аргументов ИМЁН объекта "Таблица" в Excel 2007 возвращает неправильный результат. Связка =ИНДЕКС(Лист1!$A$1:$E$24;ПОИСКПОЗ(A2;Лист1!$E$1:$E$24;0);5) (тот же размер диапазона таблицы, заданный адресами ячеек возвращает правильный результат. А надо использовать первый вариант. Где ошибка? Понимаю что где-то плавает единица, но куда ж её вставлять? Спасибо.
P.S. Извиняюсь за файл формата Ексель 2007, но по другому никак.