Работа со звуком и изображениями
Надстройка позволяет экспортировать все изображения с листа Excel в графические файлы.Доступен выбор типа создаваемых файлов (поддерживаются форматы JPG, GIF и PNG) Кроме того, можно указать имя папки, в которую будут помещены созданные файлы В имени папки можно указать кодовое слово $filename - оно будет заменено на название текущего (обрабатываемого) файла Excel.
|
|||
Данный макрос производит поиск фигур (графических объектов) на всех листах текущей книги Excel,
|
|||
Данный макрос перебирает все строки на листе, и для каждой строки скачивает из интернета картинки, ссылки на которые присутствуют в этой строке (начиная с 3 столбца) В процессе загрузки изображений из интернета отображается 2-уровневый прогресс-бар, на котором можно видеть текущее состояние процесса. При формировании имён файлов и путей к папкам применяется замена запрещённых символов на допустимые: Для загрузки изображений применена WinAPI-функция URLDownloadToFile в таком виде:
|
|||
Макрос предназначен для загрузки изображений (или любых других файлов) из интернета, и сохранения скачанных файлов в одну папку.Исходные данные для работы макроса:таблица, в которой содержатся по меньшей мере 2 столбца - один с гиперссылками, второй - с именами файлов. Особенности макроса:
Настройки макроса легко выполнить, изменив в коде значения констант: Const НазваниеПапкиДляФайлов$ = "Фотографии" ' так будет называться создаваемая папка Const НомерСтолбцаСГиперссылками = 6 ' из этого столбца макрос берет гиперссылки для загрузки файлов Const НомерСтолбцаСИменамиФайлов = 4 ' из этого столбца макрос берет имена для создаваемых файлов Const НомерПервойСтрокиСДанными = 2 ' с какой строки листа начинаем обрабатывать данные Const РасширениеФайлов$ = ".jpg" ' этот текст добавляется справа к именам создаваемых файлов Смотрите также аналогичный (более сложный) макрос загрузки изображений
|
|||
Этот простейший макрос позволяет пропорционально изменять размеры изображения (высоту и ширину) в зависимости от значений ячеек B3 и B4. Значения в ячейках указываются в диапазоне от 500 до 2500 (используется проверка вводимых значений - допускается ввод чисел только в указанном диапазоне).
|
|||
Данный макрос читает информацию о цветах пикселей в битмапе (изображение BMP), формирует двумерный массив, содержащий информацию о цвете каждого пикселя, после чего переносит массив цветов на лист (в цикле закрашивая ячейки). Поддерживаются только 24-битные изображения BMP без сжатия. Для чтения информации из bitmap используется функция API-функция GetBitmapBits Преобразование результатов работы функции GetBitmapBits в двумерный массив производится следующим кодом:
|
|||
Требуется макросом поместить изображение (картинку) на лист Excel? Используйте функцию ВставитьКартинку, которая позволит вам вставить картинку в выбранную ячейку (или диапазон ячеек). При вызове функции можно задать дополнительные дополнительные параметры, указав, следует ли подгонять картинку (или ячейку) по высоте и ширине. Если вам нужна надстройка, позволяющая производить поиск изображений в заданной папке, и производить вставку картинок в ячейки или примечания, - то вы можете скачать её здесь: http://excelvba.ru/code/InsertPicturesEx В этом примере демонстрируются возможные варианты применения функции вставки картинок: Sub ПримерВставкиИзображенийНаЛист() ПутьКФайлуСКартинками = "D:\BMP\AboutForm.jpg" ' полный путь к файлу изображения ' вставка картинки в ячейку A5 (размеры картинки и ячейки не меняются) ВставитьКартинку Cells(5, 1), ПутьКФайлуСКартинками ' вставка картинки в ячейку F5 (ячейка подгоняется по ШИРИНЕ под картинку) ВставитьКартинку Cells(5, 6), ПутьКФайлуСКартинками, True ' вставка картинки в ячейку E1 (ячейка подгоняется по ВЫСОТЕ под картинку) ВставитьКартинку [e1], ПутьКФайлуСКартинками, , True ' вставка картинки в ячейку F2 (ячейка принимает размеры картинки) ВставитьКартинку Range("F2"), ПутьКФайлуСКартинками, True, True ' ========================================= ' вставка картинки в ячейку F5 (картинка подгоняется по ШИРИНЕ под ячейку) ВставитьКартинку Cells(5, 6), ПутьКФайлуСКартинками, True, , True ' вставка картинки в ячейку E1 (картинка подгоняется по ВЫСОТЕ под ячейку) ВставитьКартинку [e1], ПутьКФайлуСКартинками, , True, True ' вставка картинки в диапазон a2:e3 (картинка вписывается в диапазон) ВставитьКартинку [a2:e3], ПутьКФайлуСКартинками, True, True, True End Sub А вот и сама функция (скопируйте этот код в стандартный модуль, чтобы иметь возможность вставки картинок одной строкой кода из любого макроса):
|
|||
Узнать продолжительность (время) звучания аудиофайла (MP3, WAV и т.д.), или длительность видеофайла (видеоролика) из Excel совсем несложно при использовании функции ПродолжительностьМедиафайла: Sub Пример_Использования_Функции_ПродолжительностьМедиафайла() Путь = "E:\Music\MODERN_TALKING With_a_little_love.mp3" MsgBox "Продолжительность в секундах: " & ПродолжительностьМедиафайла(Путь), vbInformation, Путь End Sub А вот и код самой функции:
|
|||
Вставьте этот код в стандартный модуль: Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long Sub beeps(melody As String, Optional ByVal BeepTime As Integer = 200) mr = "qazwsxedcrfvtgbyhnujmik,ol.p;/['" For i = 1 To Len(melody) DoEvents: nextlen = 1: letter = Mid$(melody, i, 1) nota = InStr(1, mr, letter) If IsNumeric(letter) And letter > 0 Then nextlen = letter: i = i + 1: nota = InStr(1, mr, Mid$(melody, i, 1)) End If If nota > 0 Then
|
|||
