Как открыть библиотеку excel

Excel 2016 для Mac Word 2016 для Mac PowerPoint для Mac Excel для Mac 2011 Word для Mac 2011 PowerPoint для Mac 2011 Еще…Меньше

Примечание: 
Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим
ссылку на оригинал (на английском языке)
.

В своем коде можно задействовать другие объекты приложения, задав ссылки на библиотеку объектов этого приложения.

Добавление объекта

На вкладке «Разработчик» откройте окно проекта Visual Basic. Увидеть вкладки «разработчик» отображается ниже, если она еще не открыта.

  1. В меню Сервис выберите пункт Ссылки.

    Выбор параметров меню '' Сервис ''

  2. В разделе Доступные ссылки установите флажок для библиотеки объектов, которую требуется задействовать в вашем проекте Visual Basic.

    Диалоговое окно доступные ссылки

    Примечание: Чтобы ускорить компиляцию, снимите флажки для библиотек объектов, которые не будут использоваться в проекте.

  3. Чтобы задать порядок доступа к библиотекам объектов, в разделе Доступные ссылки выберите любую библиотеку и переместите ее вверх или вниз с помощью кнопок приоритета.

  4. Чтобы добавить в раздел Доступные ссылки другую библиотеку, нажмите кнопку Обзор и укажите путь к необходимому файлу.

  5. Найдите объект

  1. На верхней панели выберите Excel > настройки > панель инструментов и ленты.

  2. В разделе Настройка ленты выберите Основные вкладки и установите флажок Разработчик.

  3. Нажмите кнопку Сохранить и закройте Параметров Excel.

Нужна дополнительная помощь?

Содержание

  1. Доступ к библиотекам DLL в Excel
  2. Вызов функций и команд DLL из VBA
  3. Типы аргументов в C/C++ и VBA
  4. Аргументы строк и переменных
  5. Вызов функций DLL непосредственно с листа
  6. Вызов команд DLL непосредственно из Excel
  7. Память DLL и многочисленные экземпляры DLL

Доступ к библиотекам DLL в Excel

Относится к: Excel 2013 | Office 2013 | Visual Studio

Вы можете получить доступ к функции или команде DLL в Microsoft Excel несколькими способами:

с помощью модуля кода Microsoft Visual Basic для приложений (VBA), в котором функция или команда была сделана доступной с помощью выражения Declare;

через лист макросов XLM, используя функции CALL или REGISTER;

непосредственно с листа или из настроенного элемента в пользовательском интерфейсе.

В этой документации не рассматриваются функции XLM. Рекомендуется использовать любой из двух остальных подходов.

Для доступа к функции или команде непосредственно с листа или из настроенного элемента в пользовательском интерфейсе необходимо сначала зарегистрировать ее в Excel. Сведения о регистрации команд и функций см. в статье Доступ к коду XLL в Excel.

Вызов функций и команд DLL из VBA

Вы можете получать доступ к функциям и командам DLL в VBA с помощью оператора Declare. В случае этого оператора предусмотрен один синтаксис для команд, а другой — для функций.

Синтаксис 1: команды

Синтаксис 2: функции

Необязательные ключевые слова Public и Private определяют область импортированной функции (весь проект Visual Basic и модуль Visual Basic соответственно). Имя — это имя, которое вы хотите использовать в коде VBA. Если оно отличается от имени в библиотеке DLL, необходимо использовать указатель Alias «aliasname» и предоставить имя функции, экспортируемое библиотекой DLL. Для доступа к функции DLL с помощью ссылки на порядковый номер DLL необходимо предоставить псевдоним, который является порядковым номером с префиксом #.

Команды должны возвратить void. Функции должны возвращать типы, которые VBA может распознавать с помощью ByVal. Это означает, что некоторые типы легче возвращаются за счет изменения имеющихся аргументов (строк, массивов, определяемых пользователем типов и объектов).

VBA не может проверить совпадение списка аргументов и возвращаемого значения в модуле Visual Basic со значениями, закодированными в DLL. Это необходимо внимательно проверить самостоятельно, поскольку ошибка может привести к сбою Excel.

Если аргументы команды или функции не передаются с помощью ссылки или указателя, они должны стоять после ключевого слова ByVal в объявлении arglist. Когда функция C/C++ принимает аргументы указателя или функция C++ принимает аргументы ссылки, они должны передаваться ByRef. Ключевое слово ByRef можно пропустить в списке аргументов, так как оно используется по умолчанию в VBA.

Типы аргументов в C/C++ и VBA

Следует помнить об указанных ниже фактах при сравнении объявлений типов аргументов в C/C++ и VBA.

Тип String в VBA передается как указатель на структуру BSTR байтовых строк в режиме ByVal и как указатель на указатель в режиме ByRef.

Тип Variant в VBA, содержащий строку, передается как указатель на структуру BSTR строк Юникода из двухбайтовых знаков при передаче в режиме ByVal и как указатель на указатель в режиме ByRef.

Integer VBA — это 16-битный тип, эквивалентный signed short в C/C++.

Long VBA — это 32-битный тип, эквивалентный signed int в C/C++.

VBA и C/C++ допускают определяемые пользователем типы данных (применяются операторы Type и struct соответственно).

VBA и C/C++ поддерживают тип данных Variant, заданный для C/C++ в файлах заголовка Windows OLE/COM как VARIANT.

Массивы VBA — это объекты OLE SafeArrays, определенные для C/C++ в файлах заголовка Windows OLE/COM как SAFEARRAY.

Тип данных Currency в VBA передается как структура типа CY, определенная в файле заголовка Windows wtypes.h, в режиме ByVal и как указатель на него в режиме ByRef.

В VBA элементы данных в определяемых пользователем типах данных упаковываются с учетом 4-байтовых границ, тогда как в Visual Studio по умолчанию они упаковываются с учетом 8-байтовых границ. Поэтому необходимо заключить определение структуры C/C++ в блок #pragma pack(4) … #pragma pack() , чтобы избежать несовпадения элементов.

Ниже приведен пример определений эквивалентных пользовательских типов.

В некоторых случаях VBA поддерживает более широкий диапазон значений, чем Excel. Тип данных Double в VBA соответствует требованиям IEEE и поддерживает субнормальные числа, которые в настоящее время на листе округляются до нуля. Тип Date в VBA представляет даты от 1 января 0100 года, которые можно задать с помощью отрицательных сериализованных значений дат. Excel поддерживает сериализованные даты не меньше нуля. Тип Currency в VBA (64-битное масштабированное целое число) позволяет добиться точности, не поддерживаемой 8-байтовыми значениями Double, и поэтому не имеет совпадений на листе.

Excel передает только значения Variant указанных ниже типов в определяемую пользователем функцию VBA.

Тип данных VBA Битовые флаги типа Variant C/C++ Описание
Double VT_R8
Boolean VT_BOOL
Date VT_DATE
String VT_BSTR Строка байтов OLE Bstr
Диапазон VT_DISPATCH Ссылки на ячейку и диапазон
Переменная, содержащая массив VT_VARIANT VT_ARRAY Литеральные массивы
Ccy VT_CY 64-битное целое число, масштабированное для достижения точности 4 знака после запятой.
Переменная, содержащая ошибку VT_ERROR
VT_EMPTY Пустые ячейки или пропущенные аргументы

Вы можете проверить тип переданного значения Variant в VBA с помощью VarType, если функция не возвращает тип значений диапазона при вызове с использованием ссылок. Чтобы определить, является ли Variant объектом ссылки Range, используйте функцию IsObject.

В VBA можно создавать Variant, содержащие массивы переменных, назначая свойство ValueRange для Variant. Ячейки в исходном диапазоне, отформатированные с использованием стандартного денежного формата для действующих региональных параметров, преобразуются в элементы массива типа Currency. Ячейки, отформатированные как даты, преобразуются в элементы массива типа Date. Ячейки, содержащие строки, преобразуются в Variant BSTR с расширенными символами. Ячейки, содержащие ошибки, преобразуются в Variant типа VT_ERROR. Ячейки, содержащие значения True или False типа Boolean, преобразуются в объекты Variants типа VT_BOOL.

В Variant значение True сохраняется как -1, а False — как 0. Числа, не отформатированные как даты или денежные суммы, преобразуются в Variant типа VT_R8.

Аргументы строк и переменных

Excel поддерживает внутреннюю работу со строками Юникода с расширенными символами. Когда определяемая пользователем функция в VBA объявлена как принимающая аргумент String, Excel преобразует передаваемую строку в байтовую строку в соответствии с языковым стандартом. Чтобы функции передавалась строка Юникода, определяемая пользователем функция в VBA должна принимать Variant вместо аргумента String. При выполнении этого условия функция DLL сможет принимать строку Variant BSTR с расширенными символами VBA.

Чтобы из DLL возвращались строки Юникода в VBA, следует изменить имеющийся аргумент строки Variant. Для этого следует объявить функцию DLL как принимающую указатель на Variant в коде C/C++, а также объявить аргумент в коде VBA как ByRef varg As Variant . Память предыдущей строки следует освободить, а значение новой строки, созданное с использованием строки OLE Bstr, работает только в DLL.

Чтобы байтовая строка возвращалась в VBA из DLL, следует изменить имеющийся аргумент BSTR байтовой строки. Для этого следует объявить функцию DLL как принимающую указатель на BSTR в коде C/C++, а также объявить аргумент в коде VBA как ByRef varg As String.

Чтобы избежать проблем, связанных с памятью, необходимо обеспечить обработку только строк, которые передаются этими способами из VBA, используя функции строки OLE BSTR. Например, необходимо обеспечить вызов SysFreeString для освобождения памяти перед перезаписью переданной строки, а также SysAllocStringByteLen или SysAllocStringLen, чтобы назначить место для новой строки.

Вы можете обеспечить создание сообщений об ошибках на листе Excel как Variant в VBA при помощи функции CVerr с аргументами, как показано в приведенной ниже таблице. Ошибки на листе также могут быть возвращены в VBA из DLL при помощи Variant типа VT_ERROR, а также с указанными ниже значениями в поле ulVal.

Ошибка Значение Variant ulVal Аргумент CVerr
#NULL! 2148141008 2000
#ДЕЛ/0! 2148141015 2007
#ЗНАЧ! 2148141023 2015
#ССЫЛКА! 2148141031 2023
#ИМЯ? 2148141037 2029
#ЧИСЛО! 2148141044 2036
#Н/Д 2148141050 2042

Обратите внимание на то, что значение Variant ulVal эквивалентно значению аргумента CVerr с шестнадцатеричным значением x800A0000.

Вызов функций DLL непосредственно с листа

Вы не сможете получить доступ к функциям DLL Win32 с листа, если не используете, к примеру, интерфейсы VBA или XLM либо не сообщите Excel заранее о функции, ее аргументах и типе возвращаемого значения. Этот процесс называется регистрацией.

Ниже приведены способы, которыми можно получить доступ к функциям DLL на листе.

Объявите функцию в VBA, как показано выше, и получите доступ к ней через пользовательскую функцию VBA.

Сначала обеспечьте вызов функции DLL с помощью CALL на листе макросов XLM, а затем — доступ к ней с помощью определяемой пользователем функции XLM.

Используйте команду XLM или VBA, чтобы вызвать функцию XLM REGISTER, которая предоставляет сведения, необходимые Excel для опознания функции при ее вводе в ячейке листа.

Преобразуйте DLL в XLL и зарегистрируйте функцию с помощью функции xlfRegister C API после активации XLL.

Четвертый подход изолированный: код, регистрирующий функции, и код функций хранятся в одном объекте кода. Изменение надстройки не включает изменение листа XLM или модуля кода VBA. Чтобы сделать это с широкими возможностями управления, оставаясь в рамках возможностей API C, необходимо преобразовать DLL в XLL и загрузить получившуюся надстройку с помощью диспетчера настроек. Это позволяет Excel вызывать функцию, предоставленную библиотекой DLL, при загрузке или активации надстройки, из которой затем можно зарегистрировать все функции, которые содержит XLL, и выполнять другие задачи инициализации DLL.

Вызов команд DLL непосредственно из Excel

Команды DLL Win32 недоступны напрямую из диалоговых окон и меню Excel без интерфейса, например VBA, или без предварительной регистрации команд.

Получать доступ к командам DLL можно следующими способами:

Объявите команду в VBA так, как описано выше, и получите к ней доступ с помощью макроса VBA.

Сначала обеспечьте вызов команды DLL с помощью CALL на листе макросов XLM, а затем — доступ к ней с помощью макроса XLM.

Используйте команду XLM или VBA, чтобы вызвать функцию XLM REGISTER, которая предоставляет сведения, необходимые Excel для опознания команды при ее вводе в диалоговом окне, которое запрашивает имя команды макроса.

Преобразуйте DLL в XLL и зарегистрируйте команду с помощью функции xlfRegister C API.

Как упоминалось ранее в контексте функций DLL, четвертый подход является самым изолированным, так как код регистрации хранится наряду с кодом команд. Для этого необходимо преобразовать DLL в XLL и загрузить получившуюся надстройку с помощью диспетчера надстроек. Регистрация команд таким способом также позволяет присоединить команду к элементу пользовательского интерфейса, например пользовательскому меню, или настроить перехват события с вызовом команды по нажатию определенной клавиши или другому событию.

Приложение Excel обрабатывает все команды XLL, зарегистрированные в нем, как имеющие такой вид:

Excel игнорирует возвращаемое значение, если оно не было вызвано с листа макросов XLM. Если оно было вызвано так, возвращаемое значение преобразуется в TRUE или FALSE. Поэтому следует обеспечить возвращение 1 при успешном выполнении команды и 0 при ошибке или отмене команды.

Память DLL и многочисленные экземпляры DLL

Когда приложение загружает DLL, исполняемый код DLL загружается в глобальную кучу для выполнения, а для его структур данных назначается место в глобальной куче. Windows использует сопоставление памяти, чтобы эти области памяти отображались, как в процессе приложения. Таким образом приложение может получать к ним доступ.

Если второе приложение загружает эту библиотеку DLL, Windows не создает дополнительную копию исполняемого кода DLL, так как эта память доступна только для чтения. Windows сопоставляет память исполняемого кода DLL с процессами обоих приложений. Но при этом Windows выделяет другое место для частной копии структур данных DLL и сопоставляет эту копию только со вторым процессом. Благодаря этому одно приложение не может конфликтовать с данными DLL другого.

Это означает, что разработчикам DLL не следует беспокоиться, что несколько приложений (или несколько экземпляров одного приложения) будут получать доступ к статическим и глобальным переменным и структурам данных. Каждый экземпляр всех приложений получает собственную копию данных DLL.

Разработчикам DLL следует позаботиться о том, чтобы один и тот же экземпляр приложения не вызывал DLL много раз из разных потоков, так как это может привести к состязанию за данные этого экземпляра. Дополнительные сведения см. в статье Управление памятью в Excel.

Источник

Как использовать Личную Книгу Макросов

Если вы еще не знакомы с макросами в Excel, то я вам даже немного завидую. Ощущение всемогущества и осознание того, что ваш Microsoft Excel можно прокачивать почти до бесконечности, которые придут к вам после знакомства с макросами — приятные чувства.

Однако, эта статья для тех, кто уже «познал мощь» и начал использовать макросы (чужие или написанные самостоятельно — не важно) в своей повседневной работе.

Макрос — это код (несколько строк) на языке Visual Basic, которые заставляют Excel сделать то, что вам нужно: обработать данные, сформировать отчет, скопипастить много однообразных таблиц и т.п. Вопрос — где эти несколько строк кода хранить? Ведь от того, где макрос хранится будет потом зависеть где он сможет (или не сможет) работать.

Если макрос решает небольшую локальную проблему в отдельно взятом файле (например обрабатывает внесенные в конкретный отчет данные особым образом), то логично хранить код внутри этого же файла. Без вопросов.

А если макрос должен быть относительно универсален и нужен в любой книге Excel — как, например, макрос для конвертирования формул в значения? Не копировать же его код на Visual Basic каждый раз в каждую книгу? Кроме того, рано или поздно, почти любой пользователь приходит к мысли, что неплохо было бы сложить все макросы в одну коробку, т.е. иметь их всегда под рукой. И может быть даже запускать не вручную, а сочетаниями клавиш? И вот тут может здорово помочь Личная Книга Макросов (Personal Macro Workbook).

Как создать Личную Книгу Макросов

На самом деле, Личная Книга Макросов (ЛКМ) — это обычный файл Excel в формате двоичной книги (Personal.xlsb), который автоматически в скрытом режиме открывается одновременно с Microsoft Excel. Т.е. когда вы просто запускаете Excel или открываете любой файл с диска, на самом деле открываются два файла — ваш и Personal.xlsb, но второго мы не видим. Таким образом все макросы, которые хранятся в ЛКМ оказываются доступы для запуска в любой момент, пока открыт Excel.

Если вы еще ни разу не пользовались ЛКМ, то изначально файл Personal.xlsb не существует. Самый легкий способ его создать — это записать рекордером какой-нибудь ненужный бессмысленный макрос, но указать в качестве места для его хранения Личную Книгу — тогда Excel будет вынужден автоматически ее для вас создать. Для этого:

  1. Откройте вкладку Разработчик (Developer). Если вкладки Разработчик не видно, то ее можно включить в настройках через Файл — Параметры — Настройка ленты (Home — Options — Customize the Ribbon).
  2. На вкладке Разработчик нажмите кнопку Запись макроса (Record Macro). В открывшемся окне выберите Личную книгу макросов (Personal Macro Workbook) как место для хранения записанного кода и нажмите OK:

    Записываем макрос в Личную Книгу Макросов

  3. Остановите запись кнопкой Остановить запись (Stop Recording) на вкладке Разработчик (Developer)

Проверить результат можно, нажав на кнопку Visual Basic там же на вкладке Разработчик — в открывшемся окне редактора в левом верхнем углу на панели Project — VBA Project должен появиться наш файл PERSONAL.XLSB. Его ветку которого можно развернуть плюсиком слева, добравшись до Module1, где и хранится код только что записанного нами бессмысленного макроса:

Личная Книга Макросов в редакторе VBA

Поздравляю, вы только что создали себе Личную Книгу Макросов! Только не забудьте нажать на кнопку сохранения с дискеткой в левом верхнем углу на панели инструментов.

Как использовать Личную Книгу Макросов

Дальше все просто. Любой нужный вам макрос (т.е. кусок кода, начинающийся на Sub и заканчивающийся End Sub) можно смело копировать и вставлять либо в Module1, либо в отдельный модуль, добавив его предварительно через меню Insert — Module. Хранить все макросы в одном модуле или раскладывать по разным — исключительно вопрос вкуса. Выглядеть это должно примерно так:

Полезный макрос в Личной Книге Макросов

Запустить добавленный макрос можно в диалоговом окне, вызываемом с помощью кнопки Макросы (Macros) на вкладке Разработчик:

Запуск макросов

В этом же окне, нажав кнопку Параметры (Options), можно задать сочетание клавиш для быстрого запуска макроса с клавиатуры. Будьте внимательны: сочетания клавиш для макросов различают раскладку (русская или английская) и регистр.

Кроме обычных макросов-процедур в Личной Книге можно хранить и пользовательские макро-функции (UDF = User Defined Function). В отличие от процедур, код функций начинаются с оператора Function или Public Function, а заканчиваются на End Function:

Пример макро-функции

Код необходимо аналогичным образом скопировать в любой модуль книги PERSONAL.XLSB и затем можно будет вызвать функцию обычным образом, как любую стандарную функцию Excel, нажав кнопку fx в строке формул и выбрав функцию в окне Мастера Функций в категории Определенные пользователем (User Defined):

Выбор пользовательской функции в окне Мастера Функций

Примеры таких функций можно в больших количествах найти в интернете или здесь же на сайте (сумма прописью, приблизительный текстовый поиск, ВПР 2.0, конвертация кириллицы в транслит и т.п.)

Где хранится Личная Книга Макросов

Если вы будете использовать Личную Книгу Макросов, то рано или поздно у вас возникнет желание:

  • поделиться своими накопленными макросами с другими пользователями
  • скопировать и перенести Личную Книгу на другой компьютер
  • сделать ее резервную копию

Для этого нужно будет найти файл PERSONAL.XLSB на диске вашего компьютера. По умолчанию, этот файл хранится в специальной папке автозапуска Excel, которая называется XLSTART. Так что все, что нужно — это добраться до этой папки на нашем ПК. И вот тут возникает небольшая сложность, потому что местоположение этой папки зависит от версии Windows и Office и может различаться. Обычно это один из следующих вариантов:

  • C:Program FilesMicrosoft OfficeOffice12XLSTART
  • C:Documents and SettingsComputerApplication DataMicrosoftExcelXLSTART
  • C:Usersимя-вашей-учетной-записиAppDataRoamingMicrosoftExcelXLSTART

Как вариант, можно спросить о положении этой папки сам Excel с помощью VBA. Для этого в редакторе Visual Basic (кнопка Visual Basic на вкладке Разработчик) нужно открыть окно Immediate сочетанием клавиш Ctrl+G, ввести туда команду ? Application.StartupPath и нажать на Enter:

Путь к личной книге макросов

Полученный путь можно скопировать и вставить в верхнюю строку окна Проводника в Windows и нажать Enter — и мы увидим папку с нашим файлом Личной Книги Макросов:

Файл Личной Книги Макросов в папке XLSTART

P.S.

И несколько практических нюансов вдогон:

  • при использовании Личной Книги Макросов Excel будет запускаться чуть медленнее, особенно на слабых ПК
  • стоит периодически очищать Личную Книгу от информационного мусора, старых и ненужных макросов и т.п.
  • у корпоративных пользователей бывают иногда сложности с использованием Личной Книги, т.к. это файл в системной скрытой папке

Ссылки по теме

  • Что такое макросы, как их использовать в работе
  • Полезности для VBA-программиста
  • Тренинг «Программирование макросов на VBA в Microsoft Excel»

Перейти к содержимому

В VBA есть много интересных библиотек позволяющих работать с объектом FSO, словарями, регулярными выражениями, объектами MS Office, а также много другое.

Можно и обойтись без их подключения и использовать конструкцию CreateObject(«»), но есть два маленьких нюанса

  1. Вы теряете чуть-чуть в производительности. Я, если честно, не до конца понимаю как так, но факт есть факт. С подключенной библиотекой, на коротких примерах ускорение в 2 раза — с 0,1 сек до 0,05 сек
  2. Вы теряете подсказки в среде VBE. Для кода, который вы отдали в использование — это нормально, но для себя любимых включение может быть лишним действием (опять же вы можете в какой-то момент забыть какую библиотеку включали)

Итак, проблематика ясна. Как бороться? В три этапа.

Первый этап — макросам должен быть предоставлен доступ к объектной модели VBA. Само собой вы при этом берете на себя риски — ведь при этом макросы могут удалить все и вся.

Файл ->
Параметры ->
Центр Управления Безопасностью ->
Параметры центра управления безопасностью ->
Параметры макросов ->
Включить галочку «Предоставлять доступ к объектной модели проектов VBA»

options

Второй этап — посмотреть GUID код соответствующей библиотеки, которую будете проверять/включать программным способом. Для этого в VBE перейдите в меню и включите галочку напротив библиотеки.

Tools -> References

Ref.png

Ну и третий этап — сам макрос. Верхняя часть выводит в окно Immediate Window все библиотеки, проверяет включена ли библиотека. Ну а строчка .AddFromGuid производит подключение

Sub ref_check()

Dim i As Integer

With ThisWorkbook.VBProject.References
  For i = 1 To .Count
    Debug.Print .item(i).GUID, .item(i).Description, .item(i).Major, .item(i).Minor
    If .item(i).GUID = "{420B2830-E718-11CF-893D-00A0C9054228}" Then
      Exit Sub
    End If
  Next i
  'Microsoft scripting
  .AddFromGuid "{420B2830-E718-11CF-893D-00A0C9054228}", 1, 0
End With

End Sub


Библиотека функций в Excel

​Смотрите также​ потомственный программист по​ выборе способа реализации​C_sanches​ на лыжах мечтает…​​2. TMS FlexCel​​ запаковать не получилось.​ в указанном вами​ его в dataset.​ мало где используется.​ решить вашу «проблему».​: Здравствуйте, не могу​В меню​ Вы увидите результат.​ увидите, как вставить​содержит функции для​ результаты для наиболее​В этом уроке мы​ C#​ функции отпал. Нужна​

​: а каким образом​Ну а по​ — из всех​ Походу руки кривые​ компоненте не нашел​Насчет картинок не​ Так что остановлюсь​Рекомендую не использовать​ объявить Excel в​Сервис​ Результат показывает, что​ функцию из библиотеки​

Как получить доступ к библиотеке

​ работы с датами​ распространенных функций Excel,​ познакомимся с самым​, думаю на указанно​ именно библиотека. Желательно​ его встроить в​ поводу «будет использовать​​ 3 испытанных на​​ у меня.)))​

Библиотека функций в Excel

​ функции открытия готового​ знаю не пробовал…​ на «родном» варианте​

Вставить функцию

​ для обработки документов​ коде c#, так​выберите пункт​ доставка заказа заняла​​ Excel, позволяющую вычислить​​ и временем в​ таких как СУММ,​ объемным и часто​

Библиотека функций в Excel

Автосумма

​ ресурсе и здесь,​​ на C#.​​ файл Excel?​ на разных ПК​ данный момент больше​qwertehok​ шаблона.​umatkot​

Библиотека функций в Excel

Последние

​serg4242​​ сам офис (эта​​ как нужен дальнейший​Ссылки​ 4 рабочих дня.​ количество рабочих дней,​

Библиотека функций в Excel

Финансовые

​ формулах. Например, функция​​ СРЗНАЧ, СЧЕТ, МАКС​​ посещаемым разделом Microsoft​ на планете, есть​bedvit, подскажите, пожалуйста,​​The_Prist​​ в разных книгах»​ всего понравилась. Не​​: работает​​qwertehok​

Библиотека функций в Excel

Логические

​:​​: Подскажите компонент для​​ библиотека — «мостик»​ экспорт данных из​.​Так же, как и​ в течение которых​СЕГОДНЯ​ и МИН.​ Excel –​ специалисты по С#​ какие нибудь статьи​: Смотря какие вычисления​ — неясно, в​​ нашел косяков +​​да нет же,​

Библиотека функций в Excel

Текстовые

​: откройте примеры -​​yagami2​​ работы с Excel.​ между вашим приложением​ датагрид в эксель.​В разделе​ формулы, функции в​ должна быть произведена​возвращает текущую дату,​Команда​​Библиотекой функций​​ намного прокаченней меня.​ о создании библиотеки​ должны производиться. Если​​ чем проблема для​​ работа с файлами​

Библиотека функций в Excel

Дата и время

​ работает она с​​ там есть чтение​​, кажется, это делается​ Надо: читать .xls​ и офисом). Для​ Референсы на офис​​Доступные ссылки​​ Excel могут быть​ доставка товара. В​​ а функция​​Последние​. Мы рассмотрим структуру​

Библиотека функций в Excel

Ссылки и массивы

​ Из литературы я​​ на C# для​​ громоздкие, то смотреть​ макросов. У меня​ формата xml, Xls,​ xlsx​ xls​​ стандартным ODBC драйвером​​ и .xlsx, в​ таких целей можно​ добавил все. Подскажите,​установите флажок для​ скопированы в смежные​​ нашем случае мы​​ТДАТА​

Библиотека функций в Excel

Математические

​дает доступ к​​ библиотеки, из каких​​ пользовался гуглом -​ подключения ее потом​ стоит в сторону​ много таких и​ Xls.​ну посмотри ты​плохо​​ и, кстати, делает​​ идеале с возможностью​ использовать сторонние библиотечки,​​ с какого боку​​ библиотеки объектов, которую​​ ячейки. Наведите курсор​​ будем использовать данные​​дополнительно к дате​​ функциям Excel, с​

Библиотека функций в Excel

Другие функции

​ категорий и команд​​ тем, библиотек, примеров​​ в Excel’е. Или​ C++ и создания​ проблем нет. Может​3. zexmlss простенькая​ примеры — они​Setix​ это рекордно быстро,​ чтения картинок из​ которые позволяют работать​

Библиотека функций в Excel

Как вставить функцию из библиотеки

​ зайти.​ требуется задействовать в​ на ячейку, которая​ в столбцах B​ еще и время.​ которыми Вы работали​ она состоит. К​ на С# -​ примеры такой реализации,​ XLL. Вычисления по​ тут стоит пояснить​ библиотека с исходным​ идут вместе​

  1. ​: В общем формируется​ как вставка данных​ ячеек; создавать документы.​ с документами напрямую,​Библиотека функций в Excel
  2. ​P.S. В Visual​​ вашем проекте Visual​​ содержит функцию. Затем​ и C для​​В категории​​ недавно.​
  3. ​ каждой категории приведено​​ множество.​​ буду очень благодарен!​ скорости тогда дадут​ точнее проблему следует?​​ кодом, доступно описан​​PS я писал​Библиотека функций в Excel
  4. ​ временная таблица с​ в DataSet, так​ Сейчас использую Microsoft​​ без необходимости иметь​​ studio 2012 я​ Basic.​ нажмите левую кнопку​ расчета времени доставки.​Библиотека функций в Excel
  5. ​Ссылки и массивы​​Категория​​ небольшое описание, которое​К Примеру:​Андрей VG​ фору всем остальным​ЦитатаC_sanches написал: на​ класс. От остальных​​ в xlsxlsx точно,​​ помощью SQL запроса​ и загрузка в​​ Office, но он​​ на машине установленный​
  6. ​ совсем чайник.​Примечание:​​ мыши и, не​​Выделите ячейку, которая будет​Библиотека функций в Excel
  7. ​содержатся функции, которые​Финансовые​ даст Вам общее​на Хабрахабре.​: Доброе время суток.​Библиотека функций в Excel

​ вариантам.ЦитатаC_sanches написал:​ каком языке лучше​ отстает тем что​ читал из экселя​ в БД. В​ Excel из DataSet.​ не на всех​ офис.​MansMI​ Чтобы ускорить компиляцию, снимите​ отпуская ее, перетащите​ содержать формулу. В​ предназначены для просмотра​содержит функции для​ представление о предназначении​Сразу вам скажу,​C_sanches, есть такой​

Библиотека функций в Excel

​Макросы в их​

office-guru.ru

Добавление библиотек объектов в проект Visual Basic

​ писатькакой лучше знаете​​ нет возможности работать​ точно​ шаблоне Excel указывается​Setix​ машинах стоит. Также​Погуглите OpenXML SDK​: C# using System.Runtime.InteropServices;​ флажки для библиотек​ маркер автозаполнения по​ нашем примере это​ и поиска информации.​ финансовых расчетов, например,​ функций, входящих в​ если вы хорошо​ проект , там​ файлах не используютсяИ​ЦитатаC_sanches написал: будет​ с диаграммами и​krapotkin​ место вывода таблицы​: Кто может посоветовать​

​ работал с NPOI,​ или ClosedXML.​ using Excel =​ объектов, которые не​ ячейкам, которые необходимо​

Добавление объекта

​ ячейка D3.​ Например, Вы можете​ сумма периодического платежа​ библиотеку. В конце​ знаете VBA, но​ достаточно много и​

  1. ​ что? Нельзя использовать?​​ ли приводить вызов​​ комментарием, Они хоть​​: для работы с​​ с помощью спец.​

    Выбор параметров меню '' Сервис ''

  2. ​ библиотеку или компоненты​​ но он не​​MsGuns​ Microsoft.Office.Interop.Excel; ……………… //Проект/Добавить​ будут использоваться в​ заполнить. Функция будет​Выберите вкладку​

    Диалоговое окно доступные ссылки

    ​ добавить гиперссылку (​​ПЛТ​ урока мы на​ не знаете C#,​ примеров, есть и​ Т.к.ЦитатаC_sanches написал:​

  3. ​ функции в этой​ и описаны в​ файлами Excel довольно​​ меток (а также​​ для работы с​ поддерживает .xlsx. Желательно​: Спасибо за ответ.​ ссылку/NET/Microsoft.Office.Interop.Excel //http://www.sql.ru/forum/620401/funkcii-dlya-raboty-s-excel-iz-c try​​ проекте.​​ скопирована, а значения​

  4. ​Формулы​​ГИПЕРССЫЛКА​​или процентная ставка​ примере разберем, как​​ написать надстройку .xlam​​ группа, обсуждающая вопросы​им нужна некая​

  5. Найдите объект

Отображение вкладки «Разработчик»

  1. ​ библиотеке к зависанию​​ классе, но сохраняются​​ неплохо подходит Libre​​ нужные колонки (тоже​​ файлами (Xls и​​ простой, быстрый и​​Ссылка на библиотеку​

  2. ​ { app =​​Чтобы задать порядок доступа​​ вычислены в зависимости​​на Ленте, чтобы​​) в ячейку или​​ по кредиту​​ вставить функцию из​

  3. ​ вам будет значительно​​ использования. В частности​​ функция, которой нет​​ или крашу Excel’я?зависит​​ только в формате​

support.office.com

Как подключить библиотеки для работы с Excel

​ Office, который тоже​​ спец метки)). Суть:​ Xlsx). Желательно чтобы​ с нормальным описанием.​ добавляется (Core),но interopt​ new Excel.Application(); app.Workbooks.Open(tbFile.Text,​ к библиотекам объектов,​ от строк или​ открыть​ вернуть значение, которое​СТАВКА​
​ библиотеки.​ проще и быстрее.​ bedvit создал свою​

​ в Excelто её​​ от того, как​ Xml, Xslx формат​ поддается автоматизации​ прочитать шаблон, найти​ работать можно было​lexus-tikhvin​ не появляется. Поставил​ obj, obj, obj,​ в разделе​ столбцов.​Библиотеку функций​

CyberForum.ru

Библиотека для работы с Excel в Windows Form

​ расположено на пересечении​​.​
​В Microsoft Excel имеются​ Но если уж​ библиотеку с использованием​ и можно написать​ напишите код библиотеки.​
​ их вырезает.​еще есть TMS​ метки, вывести между​ без установки Excel.​: OfficeOpenXml.​ вместо 2003-го 2007-й​ obj, obj, obj,​Доступные ссылки​Автор: Антон Андронов​.​ заданных строки и​
​Функции из категории​ сотни самых различных​ вы решили… дерзайте​
​ этого проекта.​ как раз на​
​ Напишите правильно -​C_sanches​

​ FlexCell​​ метками информацию. В​​qwertehok​​Не уверен насчет​ офис и все​ obj, obj, obj,​
​выберите любую библиотеку​Примечание:​В группе команд​ столбца (​Логические​ функций, которые делятся​bedvit​Успехов.​ VBA и использовать​ не будет приводить.​:​Setix​ связи с этим​
​: платный или бесплатный?​ чтения, использую для​

​ заработало.​​ obj, obj, obj,​
​ и переместите ее​Мы стараемся как​Библиотека функций​ИНДЕКС​используются для проверки​ по категориям. Все​
​: Причем для увеличения​bedvit​ на листе:​C_sanches​Всем привет!​

​: И так опробовал​​ формирование шаблона на​​Setix​​ быстрого создания и​xxxxXML установить не​ obj, obj); }​​ вверх или вниз​​ можно оперативнее обеспечивать​, выберите нужную категорию.​).​ аргументов на соответствие​ эти функции составляют​ быстродействия, в моем​: C_sanches, почитайте, то​

​bedvit​​: Пользователи уже имеют​​Нужно написать функцию со​​ 3 библиотеки:​ уровне кода не​: В идеале бесплатный.​ форматирования excel-файла.​ могу, т.к. по​MsGuns​ с помощью кнопок​ вас актуальными справочными​ В нашем случае​Категория​ определенному значению или​ общую библиотеку. Вам​

CyberForum.ru

Независимая библиотека для работы с Excel

​ случае, использовались библиотеки​​ что советует Андрей​: C_sanches, все зависит​ Excel-файлы со всеми​ сложными вычислениями. И​1. XLSReadWriteII 5.2,​ приемлемо так как​ Просто пока ничего​Rius​ требованию заказчика, проект​: Здравствуйте !​приоритета​ материалами на вашем​ мы выберем​Математические​ условию. Например, если​ нет необходимости досконально​

​ написанные на С​​ VG, ExcelDNA -​
​ от ваших знаний,​ вычислениями, которые доступны​ возникло несколько вопросов:​TMS FlexCell,​

​ шаблон доступен для​​ найти не могу​: Если пойдёт только​ должен быть в​Необходимо в проекте​.​

​ языке. Эта страница​​Дата и время​​включает в себя​​ сумма заказа меньше​ изучать каждую функцию,​
​ с ассемблерными вставками​

​ в некоторых случаях​​ вот использования библиотеки,​ Excel без сторонних​1. Что лучше, сохранить​zexmlss​ правки пользователю (форматирование​ путного. Требуется на​ xlsx, то упомянутый​
​ «чистой» VS-2012​
​ работать с книгами​

​Чтобы добавить в раздел​​ переведена автоматически, поэтому​.​ функции для обработки​
​ $50, то добавляется​
​ но познакомиться с​ (сторонние), здесь я​ очень полезная разработка,​
​ написанной на C#​ библиотек и надстроек.​

​ код как надстройка​​Не много о​​ строк, столбцов). Нужен​​ основе шаблона сделать​ выше способ. Как​Usaga​ Excel. Для этого,​Доступные ссылки​ ее текст может​Выберите нужную функцию из​ числовых аргументов, выполняющие​

CyberForum.ru

Xls и Xlsx библиотеки и компоненты для работы с файлами

​ цена доставки $4.99,​​ несколькими основными из​ пасс… Поэтому прирост​ особенно если вы​ для Excel (VBA)​ Но им нужна​ (*.xla) или в​ каждой:​

​ компонент или библиотека​​ отчет без использования​

​ начать: Генерируем OfficeOpenXML-документы​​:​ как я узнал,​другую библиотеку, нажмите​ содержать неточности и​ выпадающего меню. Мы​ различные математические и​ а если больше,​

​ каждой категории будет​​ производительности от обычного​
​ планируете писать на​ (автором этих строк).​
​ некая функция, которой​ отдельную библиотеку (макрос​1. Начну с​ чтобы прочитать файл​ Excel.​
​ за 5 минут.​MsGuns​

​ используется библиотека Microsoft.Office.Interop.Excel.​​ кнопку​ грамматические ошибки. Для​ выберем функцию​ тригонометрические вычисления. Например,​ то стоимость доставки​ весьма полезно.​ кода на С#​ C# для Excel​ Используется для расчета​ нет в Excel,​ не подойдет, т.к.​ платной XLSReadWriteII 5.2​ заполнить данными и​qwertehok​NewOrdered​, установка библиотеки «чистоту»​

​Но если ее​​Обзор​ нас важно, чтобы​ЧИСТРАБДНИ​
​ вы можете округлить​

​ не взимается. В​​Чтобы получить доступ к​ в dll/xll и​ (VBA). Скачайте и​ больших чисел (длинная​ поэтому и встал​ функция будет использоваться​ — обладает почти​ сохранить.​: на форуме обсуждался​:​ проекта не портит.​ добавить явно в​и укажите путь​ эта статья была​, чтобы вычислить количество​ значение (​ данном примере целесообразно​ библиотеке функций Excel,​ VBA в xlam​ установите Microsoft Visual​ арифметика).​ вопрос о написании​ в нескольких Excel-книгах​ полным функционалом для​

​qwertehok​​Приёмы работы с​serg4242​ К тому же,​ Using, то компилятор​

​ к необходимому файлу.​​ вам полезна. Просим​ рабочих дней между​ОКРУГЛ​
​ использовать функцию​ выберите вкладку Формулы.​ возможно будет не​
​ Studio 2015 (бесплатная​Но это когда​ библиотеки. Пользователь только​​ на разных ПК)​​ работы с файлами​: я тебе написал​ zexmlss​, взгляните на эту​Microsoft.Office.Interop.Excel​ ругается на отсутствие​На верхней панели выберите​ вас уделить пару​ датами заказа и​

​), найти значение Пи​​ЕСЛИ​
​ Все возможные категории​ столь высок, что​ версия, с незначительными​
​ критически важно считать​ подключит ее и​2. Если это библиотека,​
​ xlsx и xls.​ уже — эта​отличный компонент, на​ библиотеку​

​- тоже сторонняя​​ ‘Office’ в пространстве​Excel​ секунд и сообщить,​ получения товара.​ (​
​.​ и команды вы​

​ бы компенсировать быстроту​​ для ваших целей​ быстро и наиболее​
​ сможет использовать. Макросы​
​ то на каком​
​ Много различных классов​
​ библиотека позволяет читать​ сайте есть все​
​http://epplus.codeplex.com/​ библиотека, её в​ имен. Попытка добавить​>​ помогла ли она​Появится диалоговое окно​ПИ​В категории​ можете увидеть в​ разработки в VBA,​ ограничениями).​ эффективно использовать ресурсы​ в их файлах​ языке лучше писать​ и описаний, и​ экселевские файлы​ примеры и почта​umatkot​ .NET нету, тащится​ ссылку через обозреватель​настройки​ вам, с помощью​Аргументы функции​), произведение (​Текстовые​
​ группе​ и преодоления порога​Поделайте простые задания,​ ПК.​ не используются.ЦитатаThe_Prist написал:​ (подойдет ли C#)?​ прочего. На версии​Setix​ автора — связаться​
​: Странно, заметил, за​ с офисным пакетом.​ решений (раздел COM,​>​ кнопок внизу страницы.​. Здесь вы можете​ПРОИЗВЕД​содержатся функции, которые​Библиотека функций​ вхождения в новый​ к примеру, .​В вашем случае,​ какой лучше знаетет.е.​

CyberForum.ru

Написание библиотеки для Excel

​3. Вычисления будут сложными​​ 5,2 нашел 1​

​: Поставил библиотеку посмотрел​

​ можно​ собой черту, что​ Так, что условие​

​ библиотека Microsoft Excel​панель инструментов и ленты​ Для удобства также​ ввести или выбрать​), промежуточные итоги (​ работают с текстом​.​ язык.​

​ Там же можно​ возможно, можно просто​ нет принципиальной разницы,​ и их будет​

​ косяк при попытке​ с чем работает​из платных -​ всегда при ответе,​ «чистоты» вы уже​ 12.0 Object Library)​.​ приводим ссылку на​

​ ячейки, которые будут​

​ПРОМЕЖУТОЧНЫЕ.ИТОГИ​​ в качестве значений​Разберем, какую задачу выполняет​C_sanches​ создать тему, если​ обойтись надстройкой (*.xla)​ на чем будет​ очень много. Используя​
​ записать ячейку с​ она.​ XLSReadWriteII​ получается, что с​ нарушили.​ проблему не решила.​В разделе​ оригинал (на английском​ составлять аргументы. Мы​) и многое другое.​ аргументов. С помощью​
​ каждая из команд​: Андрей VG, bedvit,​ вам потребуется помощь​
​ или (*.xlam)​ написана библиотека? В​ библиотеку, будет ли​ данными в формате​1. Работу с​Setix​ кем-то спорю. Так​MsGuns​Студия 2012, на​

​Настройка ленты​​ языке) .​ введем B3 в​Раздел​ них можно решать​ группы:​ спасибо за ссылки​ (это не реклама),​bedvit​ плане скорости работы​ приводить вызов функции​ «{}» вместо фигурной​ файлами Xls совсем​: zexmlss: там идет​ вот же: закон​:​ ПК установлен Excel​выберите​В своем коде можно​ поле​Другие функции​ такие задачи, как​Если у Вас возникли​ и пояснения.​ может и я​

​: Это проще и​​ и возможности добавить​ в этой библиотеке​ скобки «}» выводит​ не обнаружил.​ создание самого шаблона​ подлости.​

​Usaga​​ 2003​Основные вкладки​ задействовать другие объекты​

​Нач_дата​​содержит дополнительные категории​ преобразование текста в​ проблемы с поиском​C# выбран, т.к.​ чем-то смогу помочь​ нужно только знания​ функцию, которая будет​ к зависанию или​ — «/» на​
​2. Там представленна​ с помощью кода.​Используйте ClosedXml)))​, Спасибо еще раз,​
​Подскажите, пожалуйста, что​и установите флажок​ приложения, задав ссылки​и С3 в​ библиотеки функций, такие​ нижний регистр (​ необходимой функции в​

​ его знаю (что​​ (когда будет время).​ VBA.​ доступна потом в​ крашу Excel’я?​ более поздних версиях​ работа с xml​ У меня не​https://github.com/ClosedXML​ но, судя по​
​ делать.​Разработчик​ на библиотеку объектов​ поле​ как Статистические, Инженерные,​
​СТРОЧН​ Excel, команда​ не сказать о​ Потом, если вы​

​C_sanches​​ ячейках Excel’я​Спасибо!​ не могу сказать​

​ и​​ много другая задача.​yagami2​ количеству материала в​Спасибо за любую​.​ этого приложения.​
​Кон_дата​ Аналитические, Проверка свойств​) или замена части​Вставить функцию​ VBA).​
​ поймете, что это​: именно это и​Пытливый​The_Prist​ не тестировал. Сохраняет​РАСПАКОВАННЫМ​ Шаблон условно создает​: Меня в своем​

​ Сети, interop, пожалуй,​​ помощь​
​Нажмите кнопку​На вкладке «Разработчик» откройте​.​ и значений, а​ текста на другое​позволяет найти ее​Буду пробовать реализовывать​ для вас интересно​ важно в моей​
​: Если встроить код​

​: вопрос из разряда​​ все стандартные форматы​xlsx файлом. При​ пользователь. Моя цель​ время вот эта​ самый популярный вариант​Usaga​Сохранить​ окно проекта Visual​Если аргументы введены правильно,​ также функции, оставленные​ значение (​ при помощи ключевых​ то, что задумал.​ и вы готовы​
​ задаче. Только будут​ функции в файл,​ «как провести лето».​ (xml,xls,xlsx). Есть возможность​ этом не приведены​ открыть этот шаблон​ библиотека очень выручила​ работы из шарпа​:​и закройте​ Basic. Увидеть вкладки​ нажмите​ для поддержки совместимости​ЗАМЕНИТЬ​ слов.​ Еще раз всем​ писать на C#,​ использоваться не большие​ то эта функция​:)​ Кому-то нравится дикарем​ перевода в другие​ примеры, чем запаковывать​ взять данные что​https://exceldatareader.codeplex.com/​ с Экселем. Поменял​MsGuns​Параметров Excel​ «разработчик» отображается ниже,​ОК​
​ с предыдущими версиями​
​).​
​Команда​ спасибо. Если будут​ далее почитайте по​ числа, а большое​ будет доступна в​ на море, кому-то​ форматы Html и​ файл потом. Попробовал​ есть в шаблоне​:)

​Берет excel файл​​ офис, все равно​, добавление ссылки на​.​ если она еще​.​ Excel.​Категория​Автосумма​ вопросы, обязательно сюда​ COM, XLL, DLL.​ количество небольших чисел.​ файле, в чем​ All-inclusive подавай, а​ прочие. Подробнее на​ поработать с распакованным​ и по ним​ и целиком пихает​ старый 2003 сейчас​

​ эту библиотеку должно​​Loathem​ не открыта.​Функция будет вычислена, и​
​В следующем примере Вы​Дата и время​позволяет автоматически вычислять​ обращусь.​
​ Признаться я не​UPD: Вопрос о​ проблема? Пользовательская функция.​ кто-то в Альпы​ сайте у производителя.​ файлом, а потом​

planetaexcel.ru

​ заполнить отчет. Просто​

В этом уроке мы познакомимся с самым объемным и часто посещаемым разделом Microsoft Excel – Библиотекой функций. Мы рассмотрим структуру библиотеки, из каких категорий и команд она состоит. К каждой категории приведено небольшое описание, которое даст Вам общее представление о предназначении функций, входящих в библиотеку. В конце урока мы на примере разберем, как вставить функцию из библиотеки.

В Microsoft Excel имеются сотни самых различных функций, которые делятся по категориям. Все эти функции составляют общую библиотеку. Вам нет необходимости досконально изучать каждую функцию, но познакомиться с несколькими основными из каждой категории будет весьма полезно.

Содержание

  1. Как получить доступ к библиотеке
  2. Вставить функцию
  3. Автосумма
  4. Последние
  5. Финансовые
  6. Логические
  7. Текстовые
  8. Дата и время
  9. Ссылки и массивы
  10. Математические
  11. Другие функции
  12. Как вставить функцию из библиотеки

Как получить доступ к библиотеке

Чтобы получить доступ к библиотеке функций Excel, выберите вкладку Формулы. Все возможные категории и команды вы можете увидеть в группе Библиотека функций.

Библиотека функций в Excel

Разберем, какую задачу выполняет каждая из команд группы:

Вставить функцию

Если у Вас возникли проблемы с поиском необходимой функции в Excel, команда Вставить функцию позволяет найти ее при помощи ключевых слов.

Библиотека функций в Excel

Автосумма

Команда Автосумма позволяет автоматически вычислять результаты для наиболее распространенных функций Excel, таких как СУММ, СРЗНАЧ, СЧЕТ, МАКС и МИН.

Библиотека функций в Excel

Последние

Команда Последние дает доступ к функциям Excel, с которыми Вы работали недавно.

Библиотека функций в Excel

Финансовые

Категория Финансовые содержит функции для финансовых расчетов, например, сумма периодического платежа ПЛТ или процентная ставка по кредиту СТАВКА.

Библиотека функций в Excel

Логические

Функции из категории Логические используются для проверки аргументов на соответствие определенному значению или условию. Например, если сумма заказа меньше $50, то добавляется цена доставки $4.99, а если больше, то стоимость доставки не взимается. В данном примере целесообразно использовать функцию ЕСЛИ.

Библиотека функций в Excel

Текстовые

В категории Текстовые содержатся функции, которые работают с текстом в качестве значений аргументов. С помощью них можно решать такие задачи, как преобразование текста в нижний регистр (СТРОЧН) или замена части текста на другое значение (ЗАМЕНИТЬ).

Библиотека функций в Excel

Дата и время

Категория Дата и время содержит функции для работы с датами и временем в формулах. Например, функция СЕГОДНЯ возвращает текущую дату, а функция ТДАТА дополнительно к дате еще и время.

Библиотека функций в Excel

Ссылки и массивы

В категории Ссылки и массивы содержатся функции, которые предназначены для просмотра и поиска информации. Например, Вы можете добавить гиперссылку (ГИПЕРССЫЛКА) в ячейку или вернуть значение, которое расположено на пересечении заданных строки и столбца (ИНДЕКС).

Библиотека функций в Excel

Математические

Категория Математические включает в себя функции для обработки числовых аргументов, выполняющие различные математические и тригонометрические вычисления. Например, вы можете округлить значение (ОКРУГЛ), найти значение Пи (ПИ), произведение (ПРОИЗВЕД), промежуточные итоги (ПРОМЕЖУТОЧНЫЕ.ИТОГИ) и многое другое.

Библиотека функций в Excel

Другие функции

Раздел Другие функции содержит дополнительные категории библиотеки функций, такие как Статистические, Инженерные, Аналитические, Проверка свойств и значений, а также функции, оставленные для поддержки совместимости с предыдущими версиями Excel.

Библиотека функций в Excel

Как вставить функцию из библиотеки

В следующем примере Вы увидите, как вставить функцию из библиотеки Excel, позволяющую вычислить количество рабочих дней, в течение которых должна быть произведена доставка товара. В нашем случае мы будем использовать данные в столбцах B и C для расчета времени доставки.

  1. Выделите ячейку, которая будет содержать формулу. В нашем примере это ячейка D3.Библиотека функций в Excel
  2. Выберите вкладку Формулы на Ленте, чтобы открыть Библиотеку функций.
  3. В группе команд Библиотека функций, выберите нужную категорию. В нашем случае мы выберем Дата и время.Библиотека функций в Excel
  4. Выберите нужную функцию из выпадающего меню. Мы выберем функцию ЧИСТРАБДНИ, чтобы вычислить количество рабочих дней между датами заказа и получения товара.Библиотека функций в Excel
  5. Появится диалоговое окно Аргументы функции. Здесь вы можете ввести или выбрать ячейки, которые будут составлять аргументы. Мы введем B3 в поле Нач_дата и С3 в поле Кон_дата.
  6. Если аргументы введены правильно, нажмите ОК.Библиотека функций в Excel
  7. Функция будет вычислена, и Вы увидите результат. Результат показывает, что доставка заказа заняла 4 рабочих дня.Библиотека функций в Excel

Так же, как и формулы, функции в Excel могут быть скопированы в смежные ячейки. Наведите курсор на ячейку, которая содержит функцию. Затем нажмите левую кнопку мыши и, не отпуская ее, перетащите маркер автозаполнения по ячейкам, которые необходимо заполнить. Функция будет скопирована, а значения вычислены в зависимости от строк или столбцов.

Библиотека функций в Excel

Оцените качество статьи. Нам важно ваше мнение:

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке) .

В своем коде можно задействовать другие объекты приложения, задав ссылки на библиотеку объектов этого приложения.

Добавление объекта

На вкладке «Разработчик» откройте окно проекта Visual Basic. Увидеть вкладки «разработчик» отображается ниже, если она еще не открыта.

В меню Сервис выберите пункт Ссылки.

В разделе Доступные ссылки установите флажок для библиотеки объектов, которую требуется задействовать в вашем проекте Visual Basic.

Примечание: Чтобы ускорить компиляцию, снимите флажки для библиотек объектов, которые не будут использоваться в проекте.

Чтобы задать порядок доступа к библиотекам объектов, в разделе Доступные ссылки выберите любую библиотеку и переместите ее вверх или вниз с помощью кнопок приоритета.

Чтобы добавить в раздел Доступные ссылки другую библиотеку, нажмите кнопку Обзор и укажите путь к необходимому файлу.

На верхней панели выберите Excel > настройки > панель инструментов и ленты.

В разделе Настройка ленты выберите Основные вкладки и установите флажок Разработчик.

Нажмите кнопку Сохранить и закройте Параметров Excel.

Если как часть приложения Visual Basic используются объекты в других приложениях, может возникнуть необходимость в установке ссылки на библиотеки объектов этих приложений. If you use the objects in other applications as part of your Visual Basic application, you may want to establish a reference to the object libraries of those applications. Прежде чем это можно будет сделать, следует убедиться, что приложение предоставляет библиотеку объектов. Before you can do that, you must first be sure that the application provides an object library.

Чтобы узнать, предоставляет ли приложение библиотеку объектов To see if an application provides an object library

В меню Сервис выберите пункт Ссылки, чтобы открыть диалоговое окно Ссылки. From the Tools menu, choose References to display the References dialog box.

В диалоговом окне Ссылки отображаются все библиотеки объектов, зарегистрированные в операционной системе. The References dialog box shows all object libraries registered with the operating system. Прокрутите список для приложения, на библиотеку объектов которого хотите сослаться. Scroll through the list for the application whose object library you want to reference. Если приложение отсутствует в списке, можно воспользоваться кнопкой Обзор, чтобы выполнить поиск библиотек объектов (*.olb и *.tlb) или исполняемых файлов (*.exe и *.dll в Windows). If the application isn’t listed, you can use the Browse button to search for object libraries (*.olb and *.tlb) or executable files (*.exe and *.dll on Windows). В проекте используются ссылки, флажки которых установлены; ссылки без установленных флажков не используются, но могут быть добавлены. References whose check boxes are selected are used by your project; those that aren’t selected are not used, but can be added.

Чтобы добавить в проект ссылку на библиотеку объектов To add an object library reference to your project

Выберите ссылку на библиотеку объектов в поле Доступные ссылки в диалоговом окне Ссылки и нажмите кнопку ОК. Select the object library reference in the Available References box in the References dialog box and choose OK. Теперь проект Visual Basic содержит ссылку на библиотеку объектов приложения. Your Visual Basic project now has a reference to the application’s object library. Если открыть обозреватель объектов (нажав клавишу F2) и выбрать библиотеку приложения, в ней отобразятся объекты, предоставляемые выбранной библиотекой объектов, а также методы и свойства каждого объекта. If you open the Object Browser (press F2) and select the application’s library, it displays the objects provided by the selected object library, as well as each object’s methods and properties.

В обозревателе объектов можно выбрать класс в поле Классы и выбрать метод или свойство в поле Компоненты. In the Object Browser, you can select a class in the Classes box and select a method or property in the Members box. Для добавления синтаксиса в программный код используйте команды копирования и вставки. Use copy and paste to add the syntax to your code.

См. также See also

Поддержка и обратная связь Support and feedback

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Have questions or feedback about Office VBA or this documentation? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь. Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.

Экономия 5 минут в час за счет более продуктивной работы дает за год экономию в 4 рабочие недели

Как подключить библиотеку в VBA?

В VBA есть много интересных библиотек позволяющих работать с объектом FSO, словарями, регулярными выражениями, объектами MS Office, а также много другое.

Можно и обойтись без их подключения и использовать конструкцию CreateObject(«»), но есть два маленьких нюанса

    Вы теряете чуть-чуть в производительности. Я, если честно, не до конца понимаю как так, но факт есть факт. С подключенной библиотекой, на коротких примерах ускорение в 2 раза — с 0,1 сек до 0,05 сек

Вы теряете подсказки в среде VBE. Для кода, который вы отдали в использование — это нормально, но для себя любимых включение может быть лишним действием (опять же вы можете в какой-то момент забыть какую библиотеку включали)

Итак, проблематика ясна. Как бороться? В три этапа.

Первый этап — макросам должен быть предоставлен доступ к объектной модели VBA. Само собой вы при этом берете на себя риски — ведь при этом макросы могут удалить все и вся.

Файл ->
Параметры ->
Центр Управления Безопасностью ->
Параметры центра управления безопасностью ->
Параметры макросов ->
Включить галочку «Предоставлять доступ к объектной модели проектов VBA»

Второй этап — посмотреть GUID код соответствующей библиотеки, которую будете проверять/включать программным способом. Для этого в VBE перейдите в меню и включите галочку напротив библиотеки.

Ну и третий этап — сам макрос. Верхняя часть выводит в окно Immediate Window все библиотеки, проверяет включена ли библиотека. Ну а строчка .AddFromGuid производит подключение

Создание, расположение, удаление и добавление Личной книги макросов (PERSONAL.XLSB), предназначенной в Excel для записи, хранения и вызова процедур.

Личная книга макросов

Личная (персональная) книга макросов – это скрытая служебная книга Excel с именем PERSONAL.XLSB, предназначенная для записи и хранения программного кода (функций и подпрограмм) и предоставления доступа к нему из всех открытых рабочих книг.

Личная книга макросов автоматически открывается в фоновом режиме сразу после загрузки программы Excel и закрывается вместе с приложением, что обеспечивает постоянный доступ из других открытых книг к записанным в ней процедурам.

Персональная книга макросов является скрытой, поэтому добавлять, удалять и изменять размещенные в ней процедуры можно только в редакторе VBA.

Так же, как и в других рабочих книгах, в Личной книге макросов можно создавать программные модули, импортировать и экспортировать их, записывать в модули пользовательские процедуры (подпрограммы и функции) или копировать и вставлять их из модулей других книг.

Подпрограммы, размещенные в Личной книге макросов, можно просмотреть в окне «Список макросов», открыв его из любой рабочей книги Excel. Они будут перечислены с приставкой «PERSONAL.XLSB!». Функции в этом окне не отображаются.

Пользовательские функции, размещенные в Личной книге макросов, доступны для просмотра, выбора и вставки их в ячейки рабочего листа в Мастере функций:

Список функций, определенных пользователем

Список пользовательских функций в Личной книге макросов

По умолчанию пользовательские функции расположены в категории «Определенные пользователем». Они выбираются и вставляются в ячейки рабочего листа с помощью Мастера функций так же, как и все остальные.

Пользовательские функции, расположенные в обычной рабочей книге Excel, тоже будут доступны в Мастере функций, но для этого книга должна быть открыта.

Вызов процедуры из Личной книги макросов осуществляется так же, как и запуск процедуры из любой другой рабочей книги.

Создание

Изначально Личная книга макросов в приложении Excel отсутствует. Чтобы проверить, есть ли она в вашей программе (не создал ли ее кто-то ранее), откройте любую рабочую книгу и перейдите в редактор VBA, нажав сочетание клавиш «Alt+F11» (в этом сочетании используется левая клавиша Alt). Открыть редактор VBA можно и пройдя по пунктам меню:

Excel 2007-2016: «Разработчик» –> «Visual Basic» (смотрите, как отобразить вкладку «Разработчик», которая изначально скрыта);

Excel 2000-2003: «Сервис» –> «Макрос» –> «Редактор Visual Basic».

Откроется редактор VBA:

Проводник в редакторе VBA Excel

Проводник в редакторе VBA

Если в проводнике сверху вы видите строку «VBAProject (PERSONAL.XLSB)», значит Личная книга макросов на вашем компьютере уже есть.

Если же ее нет, необходимо записать какой-нибудь простенький макрос, выбрав при его создании Сохранить в: Личная книга макросов.

 Сохранение макроса в Личной книге макросов

Сохранение макроса в Личной книге макросов

После записи макроса, сохраненного в Личную книгу макросов, эта книга будет создана и появится в проводнике редактора VBA.

Расположение

Место расположения Личной книги макросов на конкретном компьютере, по словам разработчиков, зависит только от версии операционной системы. О его зависимости от версии Excel в их статье ничего не сказано.

В любом случае, книга PERSONAL.XLSB находится в папке XLSTART, которую можно разыскать с помощью поиска в проводнике:

Результаты поиска папки XLSTART в проводнике

Результаты поиска папки XLSTART в проводнике

Личная книга макросов в папке XLSTART

Личная книга макросов в папке XLSTART

Удаление

Если вы хотите удалить Личную книгу макросов из своего приложения Excel, найдите с помощью поиска в проводнике папку XLSTART и удалите из нее файл PERSONAL.XLSB.

В принципе, наличие неиспользуемой Персональной книги макросов ничем не мешает. Но если не вы ее создавали и вас беспокоит наличие в ней чужого кода, можете удалить из нее в редакторе VBA все стандартные модули и очистить от процедур модули книги (по умолчанию «ЭтаКнига») и листа (по умолчанию «Лист1»).

Добавление

Как видно из комментариев к этой статье, у некоторых пользователей приложения Excel при создании макроса в выпадающем списке «Сохранить в» отсутствует пункт «Личная книга макросов».

В этом случае можно попытаться найти с помощью поиска в проводнике папку XLSTART и, если она будет найдена, вставить в нее пустой файл PERSONAL.XLSB. В данном случае «пустой» означает «без пользовательских процедур (макросов)».

Скачать архив с пустым файлом PERSONAL.XLSB (создан в Excel 2016).

После добавления файла PERSONAL.XLSB в папку XLSTART и перезагрузки приложения Excel, Личная книга макросов появится в проводнике редактора VBA. Перезагрузка Excel заключается в закрытии всех открытых рабочих книг и последующем открытии любого файла этой программы.

0 / 0 / 0

Регистрация: 19.01.2016

Сообщений: 2

1

27.09.2016, 18:56. Показов 41139. Ответов 5


Студворк — интернет-сервис помощи студентам

Здравствуйте, у меня есть файл ексель с макросами, раньше все работало нормально, сейчас открываю и выдает ошибку «Microsoft Visual Basic for Applications» «Сan’t find project or library», далее нажимаю «ок» и Excell закрывается.

Читал другие темы, предлагают зайти в VBA — Refences и снять галочки с библиотек MISSING, но не могу, так как не могу открыть файл

Раньше на этом же компе этот файл работал без проблем

Поможете?

Спасибо!



0



Shersh

Заблокирован

27.09.2016, 19:23

2

Лучший ответ Сообщение было отмечено plyacik как решение

Решение

Открывайте файл с нажатым [Shift]`ом.
О результатах (хотя бы отрицательных) отпишитесь — будем думать дальше.



1



1337 / 308 / 74

Регистрация: 13.11.2008

Сообщений: 635

27.09.2016, 21:02

3

Цитата
Сообщение от plyacik
Посмотреть сообщение

далее нажимаю «ок»

А нажать Debug или End позволяет? Если да — то жмите End. Файл должен открыться, код остановиться. И тогда уже сможете перейти в код.
Либо же откройте Excel, перейдите в параметры и отключите макросы(отключить все макросы без уведомления). Закройте Excel и откройте свой файл. Он запустится без запуска макросов. Уберете все MISSING в References, сохраните файл. Теперь можно включать в параметрах макросы и перезапускать Excel.



1



0 / 0 / 0

Регистрация: 19.01.2016

Сообщений: 2

28.09.2016, 11:32

 [ТС]

4

В общем проблема решилась, но не очень разумным способом, нашел комп на котором открылся файл, пересохранил и все решилось.

кстати с нажатим Shift’ом тоже получилось, выскочило окно на котором отключил макросы, файл пересохранил и все ок

Спасибо!



0



0 / 0 / 0

Регистрация: 25.02.2020

Сообщений: 3

15.08.2020, 22:07

5

Случилась у меня такая же проблема, и есть там еще один обход.
Вот на этом видео — все рассказано, буквально пара минут: https://www.youtube.com/watch?… e=youtu.be



0



0 / 0 / 0

Регистрация: 03.07.2020

Сообщений: 169

20.04.2021, 11:59

6

Franky101010, не работает решение по указанной ссылке.
При нажатии на кнопку compile — просто ту же самую ошибку выдает.



0



Like this post? Please share to your friends:
  • Как открыть автоформат таблицы в word
  • Как открыть автоформат в excel
  • Как открыть временные файлы excel
  • Как открыть восстановленный файл word
  • Как открыть восстановленный документ word