Макросы VBA Excel — Страница 23

Функция для получения всех графических объектов (картинок) в заданном диапазоне ячеек

Функция ShapesInRange предназначена для получения объекта типа ShapeRange, содержащего все картинки в заданном диапазоне ячеек листа Excel

 

Пример использования функции ShapesInRange:

Sub DeleteShapesInRange()
    Dim ra As Range: Set ra = Columns(6) ' задаём диапазон для поиска картинок
    On Error Resume Next    ' на случай, если картинок в заданном диапазоне нет
    ShapesInRange(ra).Delete    ' удаляем все картинки в диапазоне ra
End Sub

Код функции ShapesInRange:

Функция VB (VBA) для определения продолжительности медиафайла

Получение длительности медиафайла формулой Excel

Узнать продолжительность (время) звучания аудиофайла (MP3, WAV и т.д.), или длительность видеофайла (видеоролика) из Excel совсем несложно.

Объединение строк в двумерном массиве

Function JoinedArray(ByVal arr As Variant, ByVal ComparedColumn As Long, _
                     Optional ByVal ColumnsForSum As String, Optional ByVal ColumnsForJoin As String, _
                     Optional ByVal JoinSeparator As String = ", ") As Variant

Эта функция позволяет осуществить объединение строк в двумерном массиве.

функция получает в качестве параметров исходный массив, и номер столбца ComparedColumn,
по которому осуществляется сравнение строк
---------------------------------------------
для совпадающих строк:
- суммируются значения в столбцах, перечисленных через запятую в переменной ColumnsForSum
- соединяются (через разделитель JoinSeparator) значения в столбцах,
перечисленных через запятую в переменной ColumnsForJoin
---------------------------------------------
функция возвращает новый массив (возможно, с меньшей размерностью по вертикали)

Заполнение пустых ячеек случайными числами

Макрос перебирает в цикле все ячейки выделенного диапазона,
и в пустые ячейки вставляет случайные числа от 1 до 12:

 

Функции для работы с объектами редактора VBA (модулями, формами, и т.п.)

' ========= СПИСОК ФУНКЦИЙ ==============================================
'    Adding A Module To A Project
'    Adding A Procedure To A Module
'    Copy A Module From One Project To Another
'    Creating An Event Procedure
'    Deleting A Module From A Project
'    Deleting A Procedure From A Module
'    Deleting All VBA Code In A Project
'    Eliminating Screen Flicker When Working With The Visual Basic Editor
'    Exporting A VBComponent To A Text File
'    Listing All Procedures In A Module
'    Reading A Procedure Declaration
'    Searching A Module For Text
'    Testing If A VBCompoent Exists
'    Total Code Lines In A Component
'    Total Code Lines In A Project
'    Total Lines In A Project
' ========= СПИСОК ФУНКЦИЙ ==============================================