Макросы и программы для Excel в категории «Работа с файлами»

Программы и макросы для работы с файлами (обработка файлов, создание файлов, заполнение файлов данными)
  • Заполнение документов Word данными из таблицы Excel
    Надстройка FillDocuments предназначена для формирования (подготовки) документов по шаблонам, с заполнением созданных файлов данными из текущей книги Excel, с возможностью отправки писем. В качестве шаблонов могут выступать следующие типы файлов: шаблоны и документы Word (расширения DOC, DOCX, DOCM, DOT, DOTX, DOTM) шаблоны и книги Excel (расширения XLS, XLSX, XLSM, XLSB, XLT, XLTX, XLTM)...
  • Поиск изображений в папке, с последующей вставкой на лист Excel
    Надстройка позволяет искать в выбранной папке изображения, основываясь на содержимом ячеек таблицы Excel, и производить вставку найденных изображений в соседние ячейки (или в примечания к этим ячейкам). Кроме того, надстройка умеет скачивать изображения по ссылкам, сохраняя загруженные изображения в заданной папке, и вставлять картинки в примечания к ячейкам. Внимание: 21.08.2011 надстройка...
  • Макрос VBA загрузки списка файлов из папки
    Функция VBA для получения списка файлов из папки, с учётом выбранной глубины поиска в подпапках   Пример в файле FilenamesCollection.xls выводит список файлов на чистый лист новой книги (формируя заголовки)  Пример в файле FilenamesCollectionEx.xls более функционален - он, помимо списка файлов из папки, отображает размер файла, и дату его создания, а также формирует в ячейках...
  • Функции GetFileName и GetFilePath по сути аналогичны, и предназначены для вывода диалогового окна выбора файла (при этом можно указать стартовую папку для поиска файла, и тип/расширение выбираемого файла) Функция GetFilenamesCollection позволяет выборать сразу несколько файлов в одной папке. Функция GetFolderPath работает также, только служит для вывода диалогового окна выбора папки. Function...
  • Таблица Excel с исходными данными для создания документов Word
    Макрос предназначен для программного создания документов Word на основе шаблона (без использования функции слияния в Word) В прикреплённом к статье архиве находятся 2 файла: шаблон договора в формате Microsoft Word (расширение .dot) файл Excel с макросом Настройки макроса задаются в коде: Const ИмяФайлаШаблона = "шаблон.dot" Const КоличествоОбрабатываемыхСтолбцов = 8...
  • Данные функции предназначены для работы с текстовыми файлами из VBA Excel. Используя эти функции, вы при помощи одной строки кода сможете записать текст из переменной в файл, или наоборот, загрузить содержимое текстового файла в переменную. Чтение текстового файла в переменную: Function ReadTXTfile(ByVal filename As String) As String Set fso = CreateObject("scripting.filesystemobject...
  • Сохранить все изображения с листа в файлы
    Надстройка позволяет экспортировать все изображения с листа Excel в графические файлы. Доступен выбор типа создаваемых файлов (поддерживаются форматы JPG, GIF и PNG) Кроме того, можно указать имя папки, в которую будут помещены созданные файлы (эта папка будет создана автоматически в том же каталоге, где расположен обрабатываемая книга Excel) Если нужно сохранять картинки под именами из...
  • Скриншот программы формирования договоров купли-продажи
    Программа предназначена для формирования (заполнения) договоров купли-продажи.   Исходными данными выступает таблица сделок, и шаблон договора, в который при помощи формул подставляются значения из заданной строки таблицы сделок. Для запуска программы достаточно нажать зеленую кнопку - и сразу же начнётся формирование договоров (файлов Excel из одного листа) в автоматически созданной папке...
  • Скриншот программы, позволяющей прикреплять файлы к книге Excel
    Можно ли прикрепить (вложить) произвольные файлы в обычную книгу Excel? А потом извлечь эти файлы в заданную папку, и работать с ними? Казалось бы, Excel такого не позволяет. (а если и позволяет, то извлечь вложенные файлы без из запуска - весьма проблематично) Но, при помощи макросов, можно реализовать что угодно (и сохранение\извлечение файлов в том числе) Теперь прикрепить к книге Excel...
  • Как известно, VBA-функция MkDir может создать только папку в существующем каталоге (папке).   Например, код MkDir "C:\Папка\" отработает корректно в любом случае (создаст указанную папку), а код MkDir "C:\Папка\Подпапка\Каталог\" выдаст ошибку Run-time error '76': Path not found (потому что невозможно создать каталог Подпапка в несуществующем ещё каталоге Папка)...
  • Макрос предназначен для создания текстовых файлов в кодировке UTF-8. Исходными данными является таблица Excel из 12 столбцов. Сначала, макрос создаёт папку для будущих текстовых файлов. Папка создаётся в том же каталоге, где расположена книга Excel. Далее, для каждой строки таблицы, макрос формирует подпапку, используя в качестве её названия текст из 7-го столбца таблицы. И потом, когда папка...
  • Загрузка (импорт) файла CSV на лист Excel
    Надстройка предназначена для облегчения импорта данных в Excel из текстовых файлов с разделителями (например, из CSV) Пока во вложении - обычный файл Excel с нужными макросами, надстройку выложу позже В надстройке применена функция получения ссылки на заданную пользователем ячейку. Основой для надстройки послужила функция загрузки CSV файла в двумерный массив Использовать функции...
  • К примеру, есть у вас несколько десятков (или сотен) текстовых файлов с подобным содержимым: (количество файлов, и количество строк данных в каждом файле не ограничено) 1c04;1J0-698-151-G;1 комплект тормозных накладок;1J0698151G;1J0698151G;5;1 1c04;1H0698151A;Тормозные колодки;1H0698151A;1H0698151A;1;1 1c04;1K0-698-151-B;Тормозные колодки;1K0698151B;1K0698151B;2;1 А надо из всего этого...
  • Представляю вашему вниманию инструментарий для работы с файлами по FTP Как известно, отправить файл на FTP сервер (или загрузить файл с FTP, создать папку на FTP сервере, и т.д.) можно при помощи таких API-функций из библиотеки wininet.dll, как FtpPutFile, FtpGetFile, FtpRenameFile, FtpDeleteFile, FtpRemoveDirectory, FtpCreateDirectory, FtpFindFirstFile и т.д...
  • Шаблон договора в Word, заполняемого макросом из Excel
    Программа предназначена для автоматизации формирования договоров комиссии и купли автотранспортного средства. В качестве исходных данных выступают: таблица Excel с реквизитами создаваемых документов папка с шаблонами договоров (в формате dot) В исходной таблице Excel занесены все необходимые исходные данные для заполнения бланков договоров, а также, при помощи пользовательских формул (UDF),...
  • Отправка почты из Excel при помощи TheBAT!
    Если вам нужно рассылать письма из Excel, воспользуйтесь готовым решением в виде надстройки FillDocuments Ознакомьтесь с возможностями и способами рассылки писем из Excel, а также с инструкцией по настройке рассылки через TheBAT Макроc предназначен для автоматизированной рассылки почты из Excel. Для рассылки используется почтовая программа TheBAT! (подразумевается, что эта программа на...
  • Function PasteOLEobject(ByVal filename$, ByRef TopLeftCell As Range, _ Optional ByVal Width%, Optional ByVal Height%) As ShapeRange ' вставляет на лист объект OLE (из файла filename$) ' и размещает его в нужном месте, совмещая левый верхний угол с ячейкой TopLeftCell ' если указаны размеры Width% или Height% - они задаются вствляемому объекту On Error...
  • Функция TextFile2Array предназначена для преобразования файла CSV в двумерный массив Очень часто при работе с текстовыми файлами (и, в частности, с файлами CSV) приходится их загружать на лист Excel, предварительно производя фильтрацию данных в этом файле. Чтобы упростить весь процесс - от выбора файла CSV в диалоговом окне, до разбиения загруженного из файла текста в двумерный массив, и была...
  • Поиск трасс и просмотр ресурсов оборудования
    Программный комплекс, предназначенный для автоматизации учёта и администрирования сети связи телефонной или телекоммуникационной компании. Программа позволяет хранить и редактировать базу данных объектов (в виде файлов Excel), просматривать существующие трассы и формировать новые.   Особенность программы - возможность учёта и администрирования узлов связи с нестандартными...
  • При попытке сохранить файл под именем, заданным пользователем, вы можете получить ошибку - если в имени файла (папки) присутствуют запрещённые символы. Этого легко избежать, если в процессе формирования имени файла удалить из него недопустимые символы, заменив их символом подчёркивания: Function Replace_symbols(ByVal txt As String) As String St$ = "~!@/\#$%^&*=|`""...
  • Результат объединения данных из файлов Excel
    Программа предназначена для загрузки списка товаров из актов о приеме-передаче основных средств. Поддерживаются акты по формам № ОС-3.1 и № ОС-3.3, возможно добавить поддержку актов других форм (в формате Excel). При запуске макроса, выводится диалоговое окно выбора папки, после чего, в выбранной папке, производится поиск всех файлов Excel. Для каждого из найденных файлов Excel, программа...
  • Данный макрос позволяет быстро (одним нажатием кнопки) пересохранить текущий файл Excel в другом формате. Например, вы работаете с книгой Excel в формате Excel 97-2003 (расширение XLS), и вам понадобилось преобразовать этот файл в формат «двоичная книга Excel» (расширение XLSB) Для чего это нужно? К примеру, файлы в формате XLSB занимают намного меньше места на диске, и не...
  • Функция предназначена для разбивки текстового файла на несколько файлов меньшего размера - в каждом из которых будет не более заданнного количества строк Разделитель строк (обычно это перевод строки - константа vbNewLine) задаётся в качестве параметра функции Delimiter$ Создаваемые файлы получают имена вида filename(1).txt, filename(2).txt и т.д. Если задан параметр функции...
  • Скриншот формы поиска файлов в заданной папке
    Надстройка, позволяющая загрузить из выбранной папки список файлов на лист Excel. Автор: VictorM Особенности надстройки: задаваемая пользователем глубина поиска в подпапках простановка гиперссылок на листе Excel на найденные файлы вывод дополнительных характеристик файла (размер файла, дата создания файла, полный путь) изменяемая маска поиска (поиск по части имени файла, по...
  • Скриншот программы подготовки документов, и результат её работы (документ ПДФ)
    Программа предназначена для предпечатной подготовки, и последующего вывода на печать (на виртуальный ПДФ принтер) документов Excel.   Программа позволяет: подгонять файлы, выгруженные из 1С, под печать на одной странице изменять ориентацию страницы для счетов-фактур вставлять реквизиты (фамилии, информацию о доверенностях) в специально выделенные для этого ячейки вставлять...
  • Данный макрос позволяет получить список папок, расположенных в выбранной папке (каталоге) Если надо получить список папок, имена которых удовлетворяют определённому критерию, используйте маску поиска (параметр Mask$) Код функции и пример использования: Sub ПоискПодходящихПодпапок() ' считываем в колекцию coll подходящие полные пути папок ' (поиск папок с названием, начинающимся на 09...
  • Форма отображения картинок с листа Excel
    Программа предназначена для простановки гиперссылок в ячейки на найденные фотографии, и для последующего просмотра изображений, ссылки на которые присутствуют в ячейках Excel Принцип работы программы: надстройка отслеживает изменение выделенной области на активном листе если выделена одна ячейка (или несколько ячеек одной строки), то производится поиск столбцов, в первой ячейке...
  • Этот макрос выводит информацию о папке - например, её размер, и количество файлов в ней: Sub ПодсчётКоличестваФайловВПапке() ' задаём папку FolderPath = "C:\Documents and Settings\Admin\Рабочий стол\"   ' получаем характеристики папки Set FSO = CreateObject("Scripting.FileSystemObject") КоличествоФайловВПапкеБезУчётаПодпапок = FSO.GetFolder(FolderPath...
  • Sub ПримерИспользования() ' задаём полный путь к обрабатываемому файлу ПутьКФайлу$ = ThisWorkbook.Path & "\" & "Contract.XLS"   Application.ScreenUpdating = False ' отключаем обновление экрана arr = LoadArrayFromWorkbook(ПутьКФайлу$, "a2", 30) ' загружаем данные ' выводим результаты в окно Immediate Debug.Print "...
  • Функция предназначена для получения файлов, извлечённых из архива ZIP. Разархивирование выполняется средствами Windows, файлы извлекаются в специально созданную папку в каталоге для временных файлов (C:\WINDOWS\Temp\) При запуске макроса папка UNZIPPED FILES сначала удаляется, а потом создаётся заново. (таким образом, выполняется удаление файлов, которые могли оказаться в папке при предыдущем...
  • Данная функция формирует (создаёт) новую книгу Excel с одним листом (на основании шаблона - листа sh_template), после чего сохраняет новый файл по пути NewFilename$ Если путь не указан, сохранения нового файла не происходит. Function NewWorksheet(ByRef sh_template As Worksheet, Optional ByVal NewFilename$) As Worksheet Application.ScreenUpdating = False: On Error Resume Next: Err.Clear...
  • Внешний вид программы для облегчения регистрации, приема на работу и увольнения иностранных рабочих
    Программа предназначена для автоматизации рабочего места сотрудника, отвечающего за регистрацию, прием на работу, и увольнение иностранных граждан. В качестве исходных данных используется таблица изображенная на скриншоте. В этой таблице содержится нужная информация, необходимая для заполнения шаблонов документов. Программа заполняет следующие документы: Доверенность (doc) Заявление на...
  • Настройки программы переименования и копирования файлов
    Надстройка предназначена для переименования файлов в заданной папке. В качестве исходных данных (исходные и конечные имена файлов) выступает таблица Excel В настройках программы задаётся, в каких столбцах таблицы Excel брать имена файлов. При необходимости, можно указать префикс и суффикс для имен файлов. После запуска надстройки, на ленте Excel на вкладке НАДСТРОЙКИ появляется панель...
  • Функция FileToVBAFunction предназначена для сохранения произвольного файла в виде VBA кода. В любой момент вы можете вызвать сгенерированную функцию - она моментально создаст во временной папке необходимый файл, и вернет путь к созданному файлу. Основное применение функции - сохранение небольших файлов (в основном, графических - иконок и маленьких картинок) в книге Excel. Для того, чтобы...
  • Функция LastFile предназначена для поиска самого свежего файла в заданной папке (производится поиск файлов по маске, и из найденных файлов выбирается тот, дата последнего изменения которого максимальна)   Пример использования функции: Sub ПримерИспользованияФункции_LastFile() ' Ищем на рабочем столе все файлы TXT, и выводим имя самого нового файла. ' Просматриваются папки с...
  • Функции WIF и RIF являются обёртками для WinAPI функций WritePrivateProfileString и GetPrivateProfileString, и предназначены для записи и чтения параметров из файлов конфигурации INI. INI-файлы - это обычные текстовые файлы, предназначенные для хранения настроек программ. Примерный вид структуры INI -файла: ; комментарий [Section1] var1 = значение_1 var2 = значение_2 [access] changed=02.06...
  • Результат объединения отчётов из 1С
    Программа предназначена для объединения однотипных отчётов, сформированных программой 1С Обрабатываемые отчёты (файлы Excel) хранятся в одной папке, и имеют структуру, изображенную на скриншоте: В итоговой таблице, загруженные строки группируются (объединяются) при совпадении значений в 2 полях - «модель» и «название», при этом количество в объединяемых...
  • Пример обрабатываемого текстового файла, содержащего данные о компьютере
    Программа предназначена для выборки данных из текстовых файлов, которые были сгенерированны инвентаризационной программой В качестве исходных данных для макроса используются текстовые файлы, в которых находится информация о конфигурации компьютеров (на каждый компьютер приходится по 3 файла). Работу макроса можно разделить на следующие этапы: Выбор папки с данными по всем компьютерам...
  • Скриншот таблицы Excel со списком папок и подпапок
    Макрос предназначен для загрузки в Excel списка подпапок заданной папки Для каждой из найденных папок производится поиск всех подпапок, и для каждой подпапки из списка выводится необходимая информация (в частности, количество файлов и подпапок, а также размер папки в байтах) Для всех ячеек с названиями папок и подпапок макрос проставляет гиперссылки, позволяющие быстро получить доступ к нужному...
  • Получение длительности медиафайла формулой Excel
    Узнать продолжительность (время) звучания аудиофайла (MP3, WAV и т.д.), или длительность видеофайла (видеоролика) из Excel совсем несложно. Используйте функцию ПродолжительностьМедиафайла: (функцию можно использовать как в макросах, так и на листе Excel) Sub Пример_Использования_Функции_ПродолжительностьМедиафайла() Путь = "E:\Music\MODERN_TALKING With_a_little_love.mp3"...
  • Настройка шаблона писем для рассылки детализации звонков
    Программа предназначена для создания отчётов по детализации телефонных звонков (междугородная и международная связь), последующей упаковки созданных детализаций в ZIP архив, и автоматизированной рассылки сформированных писем абонентам. При запуске программа ищет в заданной папке исходные файлы с детализацией (упакованные в ZIP файлы DBF), и на основании из этих файлов формирует (по шаблону, с...
  • Скриншот листа коммерческого предложения - описание, фото и карта рекламной конструкции
    Программа предназначена для формирования коммерческих предложений по наружной рекламе. В качестве исходных данных выступает файл Excel со списком рекламных объектов. Список объектов должен содержать следующую информацию (в отдельных столбцах): адрес рекламной конструкции (щита) сторона рекламного щита или перетяжки (А, Б, В, и т.п.) ссылки на фото и карту рекламной конструкции (...
  • В некоторых случаях, при запуске файла Excel с макросами (к примеру, надстройки Excel), для обеспечения работы макросов требуется, чтобы был полный доступ к файлу (а не "только чтение"), или же файл был сохранён в заданной папке. Полный доступ к файлу необходим, например, для работы автоматического обновления надстройки, а постоянный путь может потребоваться, если вы хотите...
  • Данный код выводит список полных путей файлов, выбранных пользователем в диалоговом окне, отсортированный по дате создания файла: Function GetFilenamesCollection(Optional ByVal Title As String = "Выберите файлы для обработки", _ Optional ByVal InitialPath As String = "c:\") As FileDialogSelectedItems ' функция выводит диалоговое окно выбора...
  • Вашему вниманию предлагается шестнадцатеричный редактор HexEdit. Для чего нужен шестнадцатеричный редактор? Для просмотра и корректировки любой информации, содержащейся в файлах. Кому это может быть нужно и при каких обстоятельствах? Например, тому, кто хочет заглянуть внутрь файла (любой структуры) и что-либо найти (и поправить). НехEdit будет особенно полезен в тех случаях, когда политика...