- Видеоинструкция по сравнению и подстановке
- Настройки программы Lookup
- Дополнительные возможности
- Копирование новых строк прайс-листа из одной таблицы в другую
- Сравнение двух файлов Excel - выделение цветом совпадений и отличий
- Подстановка значений в таблицы Excel с использованием различных настроек
Программный интерфейс (API) надстройки Lookup (для запуска из макроса)
Программный интерфейс (API) надстройки Lookup (для запуска из макроса) |
Надстройка Lookup поддерживает возможность управления из стороннего макроса.
ВНИМАНИЕ: техподдержка не распространяется на вопросы, связанные с запуском надстройки из ваших макросов, а также при запуске из планировщика Windows по расписанию.
В общей инструкции по API и автозапуску надстроек описано:
- как запустить надстройку, и проверить, запущена ли она
- как выполнить основные команды, при запущенной надстройке
- как произвести импорт ранее сохранённых настроек из файла xml
- как программно изменить настройки Lookup
а также присутствует файл Excel с примерами макросов для этих задач.
Ниже описаны параметры, имеющие отношение только к надстройке FillDocuments.
Команды меню, и соответствующие им макросы:
Пункт меню | Код VBA для выполнения команды |
---|---|
Подставить данные | Run "LookupData" |
Есть возможность при помощи макроса в вашем файле Excel запустить подряд несколько подстановок с разными настройками подстановки.
Для этого, в стандартный модуль вашего файла Excel поместите этот макрос, и назначьте ему кнопку на листе:
(подстановки будут запущены в том порядке, в каком они указаны в коде в строках coll.Add "название набора")
Sub Lookup_RunMultiSettings() On Error Resume Next Dim coll As New Collection, setName, fExists As Boolean, addinpath$, res As Boolean, defSett$ addinpath$ = GetSetting("Lookup", "Setup", "AddinPath") defSett$ = GetSetting("Lookup", "Settings", "_SettingSetName") defSettFilename$ = GetSetting("Lookup", "Settings", "_SettingSetFilename") Debug.Print "default is "; defSett$, defSettFilename$ ' названия наборов настроек (имена сохраненных наборов настроек) ' количество пунктов списке не ограничено coll.Add "222" coll.Add "444" coll.Add "333" For Each setName In coll ' если хоть один файл набора настроек не найден - ничего не делаем settPath$ = Left(addinpath$, InStrRev(addinpath$, "\")) & "LookupSettings\" & setName & ".xml" fExists = CreateObject("Scripting.FileSystemObject").FileExists(settPath$) If Not fExists Then MsgBox "Не найдены настройки с названием «" & setName & "»", vbCritical, "Запуск Lookup из макроса" Exit Sub End If Next For Each setName In coll ' перебираем значения в списке Application.StatusBar = "Запущена подстановка с настройками «" & setName & "»" settPath$ = Left(addinpath$, InStrRev(addinpath$, "\")) & "LookupSettings\" & setName & ".xml" fExists = CreateObject("Scripting.FileSystemObject").FileExists(settPath$) If fExists Then ' если файл найден - пробуем активировать набор настроек res = Application.Run("'" & addinpath$ & "'!SETT").ActivateSettingSet(setName, settPath$) If res Then ' если он применился - запускаем подстановку Debug.Print res, fExists, setName Application.Run "'" & addinpath$ & "'!RunWithDelay", "CreateProgramCommandBar" Application.ScreenUpdating = True Application.Run "'" & addinpath$ & "'!LookupData" End If End If Next Application.StatusBar = "Подстановка данных завершена" ' выбираем настройки, которые были на момент запуска res = Application.Run("'" & addinpath$ & "'!SETT").ActivateSettingSet(defSett$, defSettFilename$) End Sub
- Добавить комментарий
- 834 просмотра