Wiki
Обновлено: 07.02.2024
 
     
Раздел: Версия COM/XLL id Свойста/Методы класса, Функции, Команды меню
COM: BignumArithmeticInteger  4.0 1 Help

HTML Справка (без параметров). Открывает html-страницу с описанием свойств и методов класса.

void
Help()
COM: BignumArithmeticInteger  4.0 2 Bignum

Принимает и возвращает BSTR строку StringBSTR (задает число или возвращает значение).

BSTR
Bignum(LONG Bignum, LONG BignumBase=10) = BSTR 

Bignum-индекс длинного числа в массиве (0-255). 
BignumBase-база длинного числа (от 2 до 36), по умолчанию = 10.
COM: BignumArithmeticInteger  4.0 3 Sign

Возвращает знак длинного числа

LONG 
Sign(LONG Bignum)

Возвращает 1 если Bignum > 0, 0 если Bignum = 0, и -1 если Bignum < 0.
COM: BignumArithmeticInteger  4.0 4 Even

Определяет, является ли Bignum четное или нечетное.

LONG 
Even(BYTE Bignum)

Возвращает 1 если Bignum четное, 0 если Bignum нечетное.
COM: BignumArithmeticInteger  4.0 5 Compare

Сравнивает два длинных числа.

LONG 
Compare(LONG Bignum1, LONG Bignum2)

Возвращает 1 если Bignum1 > Bignum2, 0 если Bignum1 = Bignum2, и -1 если Bignum1 < Bignum2.
COM: BignumArithmeticInteger  4.0 6 BignumSet

Задает число с параметрами аналогичными методу Bignum()

BignumSet
(LONG Bignum, BSTR StringBSTR, LONG BignumBase=10)
COM: BignumArithmeticInteger  4.0 7 Sum(BYTE BignumSet, BYTE Bignum1, BYTE Bignum2); Метод. Суммирует два длинных числа. BignumSet = Bignum1 + Bignum2
COM: BignumArithmeticInteger  4.0 8 SumL(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Суммирует длинное число с обычным. BignumSet = Bignum1 + LONG_PTR(х64:LONG_PTR= LONGLONG, х32:LONG_PTR= LONG)
COM: BignumArithmeticInteger  4.0 9 Abs(BYTE BignumSet, BYTE Bignum1); Метод. Возвращает модуль значения из Bignum1 в BignumSet.
COM: BignumArithmeticInteger  4.0 10 Negate(BYTE BignumSet, BYTE Bignum1); Метод. Возвращает значение с противоположным знаком из Bignum1 в BignumSet. BignumSet = - Bignum1.
COM: BignumArithmeticInteger  4.0 11 Subtract(BYTE BignumSet, BYTE Bignum1, BYTE Bignum2); Метод. Вычитает из одного длинного числа второе. BignumSet = Bignum1 - Bignum2
COM: BignumArithmeticInteger  4.0 12 SubtractL(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Вычитает из длинного числа обычное. BignumSet = Bignum1 - LONG_PTR.
COM: BignumArithmeticInteger  4.0 13 Multiply(BYTE BignumSet, BYTE Bignum1, BYTE Bignum2); Метод. Умножает одно длинное число на второе. BignumSet = Bignum1 * Bignum2.
COM: BignumArithmeticInteger  4.0 14 MultiplyL(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Умножает длинное число на обычное. BignumSet = Bignum1 * LONG_PTR.
COM: BignumArithmeticInteger  4.0 15 Divide(BYTE BignumQuotient, BYTE BignumRemainder, BYTE Bignum1, BYTE Bignum2); Метод. Делит одно длинное число на второе. При делении получаем частное в BignumQuotient, остаток от деления в BignumRemainder = Bignum1 / Bignum2.
COM: BignumArithmeticInteger  4.0 16 DivideL(BYTE BignumQuotient, BYTE BignumRemainder, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Делит длинное число на обычное. При делении получаем частное в BignumQuotient, остаток от деления в BignumRemainder = Bignum1 / LONG_PTR.
COM: BignumArithmeticInteger  4.0 17 Power(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Возводит в степень LONG_PTR длинное число Bignum1, результат возвращает в BignumSet. BignumSet = Bignum1 ^ LONG_PTR.
COM: BignumArithmeticInteger  4.0 18 Clone(BYTE BignumSet, BYTE Bignum1); Метод. Копирует Bignum1 в BignumSet. BignumSet = Bignum1
COM: BignumArithmeticInteger  4.0 19 RootRem(BYTE BignumRoot, BYTE BignumRemainder, BYTE Bignum1, LONG_PTR n_root); Метод. Извлекает корень n_root-степени из Bignum1. Целочисленный результат возвращает в BignumRoot, остаток в BignumRemainder = (n-th root)√ Bignum1.
COM: BignumArithmeticInteger  4.0 20 Factorial(BYTE BignumSet, LONG n); Метод. Возвращает в BignumSet факториал n!
COM: BignumArithmeticInteger  4.0 21 Fibonacci(BYTE BignumSet, LONG_PTR n); Метод. Возвращает в BignumSet число Фибоначи n. Fn+1 = Fn + Fn-1
COM: BignumArithmeticInteger  4.0 22 LucNum(BYTE BignumSet, LONG_PTR n); Метод. Возвращает в BignumSet число Лукоса n. Ln+1 =Ln + Ln-1
COM: BignumArithmeticInteger  4.0 23 FileSet(BYTE Bignum, BSTR StringBSTRFileName, LONG BignumBase=10); Метод. Загружает длинное число из файла (*.txt). Принимает BSTR* строку StringBSTRFileName в качестве полного пути и имени файла. Bignum-индекс длинного числа в массиве (0-255). BignumBase-база числа (от 2 до 36), по умолчанию = 10.
COM: BignumArithmeticInteger  4.0 24 FileGet(BYTE Bignum, BSTR StringBSTRFileName, LONG BignumBase=10); Метод. Сохраняет длинное число в файл (*.txt). Принимает BSTR* строку StringBSTRFileName в качестве полного пути и имени файла. Bignum-индекс длинного числа в массиве (0-255). BignumBase-база числа (от 2 до 36), по умолчанию = 10.
COM: BignumArithmeticInteger  4.0 25 Clear(LONG Bignum=-1); Метод. Освобождает память занятую длинным числом Bignum, или освобождает память занятую всеми числами при заданном параметре по умолчанию = -1.
COM: BignumArithmeticInteger  4.0 26 LONG Val = BignumArraySize(); Метод. Возвращает количество чисел Bignum в созданном классе/массиве. Начиная с v2.0.0.0 (теперь массив чисел может быть произвольного размера, а не как ранее 256 чисел. Размер увеличиваться автоматически.)
COM: BignumArithmeticFloat 4.0 1 Help

HTML Справка (без параметров). Открывает html-страницу с описанием свойств и методов класса.

void
Help()
COM: BignumArithmeticFloat 4.0 2 2.LONG Val = SizeBits(BYTE Bignum, LONG_PTR* pVal) = .LONG Val; Свойство. Задает и возвращает размер длинного числа в БИТАХ LONG Val. Bignum-индекс длинного числа в массиве (0-255).
COM: BignumArithmeticFloat 4.0 3 3.BSTR* String = Bignum(BYTE Bignum, LONG BignumBase=10, LONG_PTR Precision=0, BSTR Separator=”.”, VARIANT_BOOL Exponential=-1) = BSTR* String; Свойство. Принимает и возвращает BSTR* строку String (задает число или возвращает значение). Bignum-индекс длинного числа в массиве (0-255). BignumBase-база длинного числа (от 2 до 36), по умолчанию = 10. Precision – точность (кол-во цифр в числе), по умолчанию = 0 - максимальная (равна заданному размеру в битах). Separator – символ разделителя целой и дробной частей числа, по умолчанию точка(“.”). Exponential – по умолчанию =-1 экспоненциальная запись, 0 – десятичная (в разработке).
(При парсинге строки в число, ожидаемая десятичная точка берется из текущей локали, на системах, предоставляющих localeconv).
COM: BignumArithmeticFloat 4.0 4 4.LONG Val = Sign(BYTE Bignum); Свойство. Возвращает знак длинного числа LONG Val.Возвращает 1 если Bignum > 0, 0 если Bignum = 0, и -1 если Bignum < 0.
COM: BignumArithmeticFloat 4.0 5 5.LONG Val = Compare(BYTE Bignum1, BYTE Bignum2); Метод. Сравнивает два длинных числа. Возвращает 1 если Bignum1 > Bignum2, 0 если Bignum1 = Bignum2, и -1 если Bignum1 < Bignum2.
COM: BignumArithmeticFloat 4.0 6 6.SizeBitsSet(BYTE Bignum, LONG_PTR SizeBits); Метод. Задает размер длинного числа в БИТАХ LONG Val.
COM: BignumArithmeticFloat 4.0 7 7.BignumSet(BYTE Bignum, BSTR StringBSTR, LONG BignumBase=10, BSTR Separator=”.”); Метод. Задает число с параметрами аналогичными свойству Bignum().
COM: BignumArithmeticFloat 4.0 8 8.Sum(BYTE BignumSet, BYTE Bignum1, BYTE Bignum2); Метод. Суммирует два длинных числа. BignumSet = Bignum1 + Bignum2
COM: BignumArithmeticFloat 4.0 9 9.SumL(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Суммирует длинное число с обычным. BignumSet = Bignum1 + LONG_PTR(х64:LONG_PTR= LONGLONG, х32:LONG_PTR= LONG)
COM: BignumArithmeticFloat 4.0 10 10.Abs(BYTE BignumSet, BYTE Bignum1); Метод. Возвращает модуль значения из Bignum1 в BignumSet.
COM: BignumArithmeticFloat 4.0 11 11.Subtract(BYTE BignumSet, BYTE Bignum1, BYTE Bignum2); Метод. Вычитает из одного длинного числа второе. BignumSet = Bignum1 - Bignum2.
COM: BignumArithmeticFloat 4.0 12 12.SubtractL(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Вычитает из длинного числа обычное. BignumSet = Bignum1 - LONG_PTR.
COM: BignumArithmeticFloat 4.0 13 13.Multiply(BYTE BignumSet, BYTE Bignum1, BYTE Bignum2); Метод. Умножает одно длинное число на второе. BignumSet = Bignum1 * Bignum2.
COM: BignumArithmeticFloat 4.0 14 14.MultiplyL(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Умножает длинное число на обычное. BignumSet = Bignum1 * LONG_PTR.
COM: BignumArithmeticFloat 4.0 15 15.Divide(BYTE BignumSet, BYTE Bignum1, BYTE Bignum2); Метод. Делит одно длинное число на второе. BignumSet = Bignum1 / Bignum2
COM: BignumArithmeticFloat 4.0 16 16.DivideL(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Делит длинное число на обычное. BignumSet = Bignum1 / LONG_PTR.
COM: BignumArithmeticFloat 4.0 17 17.Root(BYTE BignumSet, BYTE Bignum1); Метод. Извлекает квадратный корень из Bignum1. Результат возвращает в BignumSet. BignumSet = √ Bignum1.
COM: BignumArithmeticFloat 4.0 18 18.Negate(BYTE BignumSet, BYTE Bignum1); Метод. Возвращает значение с противоположным знаком из Bignum1 в BignumSet. BignumSet = - Bignum1.
COM: BignumArithmeticFloat 4.0 19 19.Power(BYTE BignumSet, BYTE Bignum1, LONG_PTR LONG_PTR); Метод. Возводит в степень LONG_PTR длинное число Bignum1, результат возвращает в BignumSet. BignumSet = Bignum1 ^ LONG_PTR.
COM: BignumArithmeticFloat 4.0 20 20.Clone(BYTE BignumSet, BYTE Bignum1); Метод. Копирует Bignum1 в BignumSet. BignumSet = Bignum1
COM: BignumArithmeticFloat 4.0 21 21.FileSet(BYTE Bignum, BSTR StringBSTRFileName, LONG BignumBase=10); Метод. Загружает длинное число из файла (*.txt). Принимает BSTR* строку StringBSTRFileName в качестве полного пути и имени файла. Bignum-индекс длинного числа в массиве (0-255). BignumBase-база числа (от 2 до 36), по умолчанию = 10.
(При парсинге строки в число, ожидаемая десятичная точка берется из текущей локали, на системах, предоставляющих localeconv).
COM: BignumArithmeticFloat 4.0 22 22.FileGet(BYTE Bignum, BSTR StringBSTRFileName, LONG BignumBase=10, LONG_PTR Precision=0); Метод. Сохраняет длинное число в файл (*.txt). Принимает BSTR* строку StringBSTRFileName в качестве полного пути и имени файла. Bignum-индекс длинного числа в массиве (0-255). BignumBase-база числа (от 2 до 36), по умолчанию = 10. Precision – точность (кол-во цифр в числе), по умолчанию = 0 - максимальная (равна заданному размеру в битах).
COM: BignumArithmeticFloat 4.0 23 23.Clear(LONG Bignum=-1); Метод. Освобождает память занятую длинным числом Bignum, или освобождает память занятую всеми числами при заданном параметре по умолчанию = -1.
COM: BignumArithmeticFloat 4.0 24 24.LONG Val = BignumArraySize(); Метод. Возвращает количество чисел Bignum в созданном классе/массиве. Начиная с v2.0.0.0 (теперь массив чисел может быть произвольного размера, а не как ранее 256 чисел. Размер увеличиваться автоматически.)
COM: BignumArithmeticFloat 4.0 25 25.BSTR* String = GetToBignumInt(LONG Bignum, LONG BignumBase=10); Метод. Преобразовать Bignum из Float в Integer и вывести. ВАЖНО! преобразование происходит с заданной ранее точностью в битах для Float (SizeBitsSet). Без округлений, отбрасывается дробная часть. Будьте внимательнее в таких преобразованиях. Начиная с v2.0.0.0.
COM: VBA 4.0 1 [id(1), helpstring("Array sort (String)")] HRESULT ArraySortS([in, out] VARIANT* array_in_out, [in,defaultvalue(0)] VARIANT_BOOL sort_order, [in, defaultvalue(0)] LONG key_1, [in, defaultvalue(0)] LONG key_2, [in, defaultvalue(0)] LONG key_3, [in, defaultvalue(0)]  LONG sort_orientation,  [in, defaultvalue(0)]  VARIANT_BOOL delete_duplicates,[in, defaultvalue(0)]  VARIANT_BOOL out_array_index, [in, out, defaultvalue(0)] VARIANT* index_array_out);
COM: VBA 4.0 2 [id(2), helpstring("Filter Unicode characters")] HRESULT FilterUnicodeChar([in] BSTR StringIn, [in,defaultvalue(L"")] BSTR EnableChar, [in, defaultvalue(L"")] BSTR DisableChar, [out, retval]BSTR* ResultOutRetval);
COM: VBA 4.0 3 [id(3), helpstring("Find for characters by mask")] HRESULT LikeUnicodeChar([in] BSTR stringIn, [in] BSTR maskChar, [in, defaultvalue(0)] VARIANT_BOOL invertMask, [out, retval] VARIANT_BOOL* resultRetval);
COM: VBA 4.0 4 [id(4), helpstring("Removes all spaces from text except for single spaces between words")] HRESULT Trim([in] BSTR StringIn, [out, retval] BSTR* StringOutRetval);
COM: VBA 4.0 5 [id(5), helpstring("Returns the position of the first occurrence of one string within another")] HRESULT InStr([in] BSTR StringIn, [in] BSTR StringFindin, [defaultvalue(1)] LONG Start, [out, retval] LONG* pValRetval);
COM: VBA 4.0 6 [id(6), helpstring("Returns a string, in which a specified substring has been replaced with another substring")] HRESULT Replace([in] BSTR StringIn, [in] BSTR StringFind, [in] BSTR StringReplace, [in, defaultvalue(1)] LONG Start, [in, defaultvalue(0x7fffffff)] LONG Count, [out, retval] BSTR* StringOutRetval);
COM: VBA 4.0 7 [id(7), helpstring("Array sort (Variant)")] HRESULT ArraySortV([in, out] VARIANT* array_in_out, [in, defaultvalue(1)] LONG key_1, [in, defaultvalue(0)] VARIANT_BOOL sort_order1, [in, defaultvalue(0)] LONG key_2, [in, defaultvalue(0)] VARIANT_BOOL sort_order2, [in, defaultvalue(0)] LONG key_3, [in, defaultvalue(0)] VARIANT_BOOL sort_order3, [in, defaultvalue(L"")] BSTR key_and_sort_order_next, [in, defaultvalue(0)] LONG optionCompare);
COM: VBA 4.0 8 [id(8), helpstring("Transpose")] HRESULT Transpose([in, out] VARIANT* array_in_out);
COM: VBA 4.0 9 [id(9), helpstring("QR-Generator")] HRESULT QRcodePrint([in] BSTR QRcodeText, [in, defaultvalue(L"")] BSTR FileOut, [in, defaultvalue(4)] LONGLONG FormatImageOut, [in, defaultvalue(4)] LONGLONG SizePixel, [in, defaultvalue(0)] LONGLONG PixelColorR, [in, defaultvalue(0)] LONGLONG PixelColorG, [in, defaultvalue(0)] LONGLONG PixelColorB, [in, defaultvalue(0)] LONGLONG VersionSymbol, [in, defaultvalue(1)] LONGLONG LevelErrCorrect, [in, defaultvalue(4)] LONGLONG QuietZone, [out, retval] BSTR* StringOutRetval);
COM: VBA 4.0 10 [id(10), helpstring("Convert Format Image. FormatImage (In/Out): 0 (bmp), 1 (jpeg), 2 (gif), 3 (tiff), 4 (png)")] HRESULT ConvertFormatImage([in] BSTR FileIn, [in] BSTR FileOut, [in] BYTE FormatImageOut);
COM: VBA 4.0 11 [id(11), helpstring("Get Rows Count in CSV-file encoded ANSI")] HRESULT GetRowsCountCSVansi([in] BSTR FileIn, [in, defaultvalue(0)] LONG FileFlagNoBuffering, [out, retval] LONG* RowsCountOutRetval);
COM: VBA 4.0 12 [id(12), helpstring("Get Row by index in CSV-file encoded ANSI")] HRESULT GetRowCSVansi([in] BSTR FileIn, [in]  LONG IndexString, [in, defaultvalue(0)] LONG FileFlagNoBuffering, [out, retval] BSTR* StringOutRetval);
COM: VBA 4.0 13 [id(13), helpstring("Find Rows/String by substring in CSV-file encoded ANSI")] HRESULT FindRowsInCSVansi([in] BSTR FileIn, [in] BSTR FindString, [in, defaultvalue(0)]  LONG MultiLine, [in, defaultvalue(0)] LONG FileFlagNoBuffering, [out, retval] BSTR* StringOutRetval);
COM: VBA 4.0 14 [id(14), helpstring("Sort and Delete Duplicates Rows CSV-file encoded ANSI")] HRESULT SortDeleteDuplicateRowsCSVansi([in] BSTR FileIn, [in] BSTR FileOut, [in, defaultvalue(0)]  LONG HeaderRowsCount, [in, defaultvalue(0)] LONG OnlySort, [in, defaultvalue(0)] LONG SortOrder, [in, defaultvalue(0)] LONG FileFlagNoBuffering, [in, defaultvalue(0)] LONG SetLocale, [in, defaultvalue(L"")] BSTR Locale, [out, retval] LONGLONG* RowsCountOutRetval);
COM: VBA 4.0 15 [id(15), helpstring("Hash SHA for string UTF-8. Algoritm: stringIn BSTR(in UTF-16)->UTF-8->Run Hash(BYTE)->UTF-8->BSTR(out UTF-16) stringOut")] HRESULT SHAstrUTF8([in] BSTR stringIn, [in] LONG versionSHA, [in, defaultvalue(0)] VARIANT_BOOL charLower, [out, retval] BSTR* stringOutRetval);
COM: VBA 4.0 16 [id(16), helpstring("Hash MD for string UTF-8. Algoritm: stringIn BSTR(in UTF-16)->UTF-8->Run Hash(BYTE)->UTF-8->BSTR(out UTF-16) stringOut")] HRESULT MDstrUTF8([in] BSTR stringIn, [in] LONG versionMD, [in, defaultvalue(0)] VARIANT_BOOL charLower, [out, retval] BSTR* stringOutRetval);
COM: VBA 4.0 17 [id(17), helpstring("The Advanced Encryption Standard (AES). Text Encryption Format: Base64, Hex. Supporter mode: ECB, CBC, OFB, CFB, CBC-CTS, CTR). Кеу = 128, 256 bit (16, 32 Byte). Algoritm: stringIn BSTR(in UTF-16)->UTF-8->Run AES(Byte)->Base64(Hex)->UTF-8->BSTR(out UTF-16) stringOut")] HRESULT AESstrUTF8([in] BSTR stringIn, [in] BSTR key, [in, defaultvalue(0)] VARIANT_BOOL decrypt, [in, defaultvalue(L"0")] VARIANT mode, [in, defaultvalue(L"")] BSTR initializationVectorIV, [in, defaultvalue(0) ]VARIANT_BOOL strFormatHex, [in, defaultvalue(0)]VARIANT_BOOL secureZeroMemoryKey, [out, retval] BSTR* stringOutRetval);
COM: VBA 4.0 18 [id(18), helpstring("Array2Dto1D - Old method. New method - ArrayDtoD. Change array dimensions from 2 to 1")] HRESULT Array2Dto1D([in, out] VARIANT* array_in_out, [in, defaultvalue(0)] LONG lLbound);
COM: VBA 4.0 19 [id(19), helpstring("Array1Dto2D - Old method. New method - ArrayDtoD. Change array dimensions from 1 to 2")] HRESULT Array1Dto2D([in, out] VARIANT* array_in_out, [in, defaultvalue(0)] LONG lLboundCol, [defaultvalue(0)] LONG lLboundRow, [defaultvalue(1)] LONG cElementsCol);
COM: VBA 4.0 20 [id(20), helpstring("ArrayFilterV - Filtering an array by condition")] HRESULT ArrayFilterV([in] VARIANT* array_in, [in] VARIANT* array_parameters, [in] VARIANT_BOOL array_index_on, [in, out] VARIANT* array_out);
COM: VBA 4.0 21 [id(21), helpstring("ArrayCharLowerV")] HRESULT ArrayCharLowerV([in, out] VARIANT* array_in_out);
COM: VBA 4.0 22 [id(22), helpstring("ArrayCharUpperV")] HRESULT ArrayCharUpperV([in, out] VARIANT* array_in_out);
COM: VBA 4.0 23 [id(23), helpstring("ArrayCharToNumV")] HRESULT ArrayCharToNumV([in, out] VARIANT* array_in_out);
COM: VBA 4.0 24 [id(24), helpstring("ArrayNumToCharV")] HRESULT ArrayNumToCharV([in, out] VARIANT* array_in_out);
COM: VBA 4.0 25 [id(25), helpstring("Version DLL")] HRESULT Version([out, retval] VARIANT* versionDLLRetval);
COM: VBA 4.0 26 [id(26), helpstring("File Name DLL")] HRESULT FileName([out, retval] VARIANT* fileNameDLLRetval);
COM: VBA 4.0 27 [id(27), helpstring("VARIANT Copy")] HRESULT VariantCopy([in] VARIANT* variantIn, [out, retval] VARIANT* variantCopyRetval);
COM: VBA 4.0 28 [id(28), helpstring("ArrayDtoD")] HRESULT ArrayDtoD([in, out] VARIANT* arrayInOut, [in, defaultvalue(0)]LONG lLboundRow, [in, defaultvalue(0)]LONG cElementsRow, [in, defaultvalue(0)]LONG lLboundCol, [in, defaultvalue(0)]LONG cElementsCol, [in, defaultvalue(0)]LONG lLbound3, [in, defaultvalue(0)]LONG cElements3, [in, defaultvalue(0)]LONG lLbound4, [in, defaultvalue(0)]LONG cElements4, [in, defaultvalue(0)]LONG lLbound5, [in, defaultvalue(0)]LONG cElements5, [in, defaultvalue(0)]LONG lLbound6, [in, defaultvalue(0)]LONG cElements6, [in, defaultvalue(0)]LONG lLbound7, [in, defaultvalue(0)]LONG cElements7, [in, defaultvalue(0)]LONG lLbound8, [in, defaultvalue(0)]LONG cElements8, [in, defaultvalue(0)]LONG lLbound9, [in, defaultvalue(0)]LONG cElements9, [in, defaultvalue(0)]LONG lLbound10, [in, defaultvalue(0)]LONG cElements10);
COM: VBA 4.0 30 [id(30), helpstring("ArrayReDim")] HRESULT ArrayReDim([in, out] VARIANT* arrayInOut, [in, defaultvalue(0)]LONG lLboundRow, [in, defaultvalue(0)]LONG rowStartChange, [in, defaultvalue(0)]LONG rowEndChange, [in, defaultvalue(0)]LONG lLboundCol, [in, defaultvalue(0)]LONG colStartChange, [in, defaultvalue(0)]LONG colEndChange);
COM: VBA 4.0 31 [id(31), helpstring("ArraySize")] HRESULT ArraySize([in] VARIANT* arrayIn, [out, retval] VARIANT* arraySizeRetval);
COM: VBA 4.0 32 [id(32), helpstring("Split. Out Array: String(BSTR)")] HRESULT SplitS([in] BSTR stringIn, [in] BSTR delimiter, [in, defaultvalue(0)] LONG setLowerBound, [in, defaultvalue(0)] LONG multiThreading, [out, retval] VARIANT* arrayOutRetval);
COM: VBA 4.0 33 [id(33), helpstring("Split. Out Array: VARIANT")] HRESULT SplitV([in] VARIANT stringIn, [in] VARIANT delimiter, [in, defaultvalue(0)] LONG setLowerBound, [in, defaultvalue(0)] VARIANT_BOOL multiThreading, [out, retval] VARIANT* arrayOutRetval);
COM: VBA 4.0 34 [id(34), helpstring("Array String(BSTR) Copy To Array VARIANT")] HRESULT ArrayCopyStoV([in] VARIANT* arrayIn, [in] LONG multiThreading, [in, out, defaultvalue(0)]  VARIANT* arrayOut, [out, retval] VARIANT* arrayOutRetval);
COM: VBA 4.0 35 [id(35), helpstring("Convert array String(BSTR) to array VARIANT")] HRESULT ArrayConvertStoV([in, out] VARIANT* arrayInOut, [in, defaultvalue(0)] LONG multiThreading);
COM: VBA 4.0 36 [id(36), helpstring("Convert array VARIANT to array String(BSTR)")] HRESULT ArrayConvertVtoS([in, out] VARIANT* arrayInOut, [in, defaultvalue(0)] LONG multiThreading);
COM: VBA 4.0 37 [id(37), helpstring("Like VBA")] HRESULT Like([in] BSTR stringIn, [in] BSTR patternIn, [out, retval] VARIANT_BOOL* resultRetval);
COM: VBA 4.0 38 [id(38), helpstring("RegexMatchECMAScript")] HRESULT RegexMatchECMAScript([in] BSTR stringIn, [in] BSTR patternIn, [out, retval] VARIANT_BOOL* resultRetval);
COM: VBA 4.0 39 [id(39), helpstring("UnicodeCharCodeGet")] HRESULT UnicodeCharCodeGet([in] BSTR stringIn, [in] LONG position, [out, retval] SHORT* unicodeCharRetval);
COM: VBA 4.0 40 [id(40), helpstring("UnicodeCharCodeSet")] HRESULT UnicodeCharCodeSet([in] BSTR stringIn, [in] LONG position, [in] SHORT unicodeChar);//строки с 1? массивы с 0?
COM: VBA 4.0 41 [id(41), helpstring("Creates a GUID, a unique 128-bit integer. Use CoCreateGuid when you need an absolutely unique number. To a very high degree of certainty, this function returns a unique value, no other invocation, on the same or any other system, should return the same value.")]
COM: VBA 4.0 42 [id(42), helpstring("ArraySerialization")] HRESULT ArraySerialization([in] VARIANT arrayIn, [out, retval] VARIANT* byteArrayOutRetval);
COM: VBA 4.0 43 [id(43), helpstring("ArrayDeserialization")] HRESULT ArrayDeserialization([in] VARIANT byteArrayIn, [out, retval] VARIANT* arrayOutRetval);
COM: UnorderedMap 4.0 1 [id(1), helpstring("Find")] HRESULT Find([in] VARIANT key, [in, out, optional] VARIANT* value, [out, retval] VARIANT_BOOL* resultRetval);
COM: UnorderedMap 4.0 2 [id(2), helpstring("Insert")] HRESULT Insert([in] VARIANT key, [in] VARIANT value, [out, retval] VARIANT_BOOL* resultRetval);
COM: UnorderedMap 4.0 3 [id(3), helpstring("InsertOrAssign")] HRESULT InsertOrAssign([in] VARIANT key, [in] VARIANT value, [out, retval] VARIANT_BOOL* resultRetval);
COM: UnorderedMap 4.0 4 [id(4), helpstring("Erase")] HRESULT Erase([in] VARIANT key, [out, retval] VARIANT_BOOL* resultRetval);
COM: UnorderedMap 4.0 5 [id(5), helpstring("Clear")] HRESULT Clear();
COM: UnorderedMap 4.0 6 [id(6), helpstring("Size")] HRESULT Size([out, retval] LONG* resultRetval);
COM: UnorderedMap 4.0 7 [id(7), helpstring("RangeSet")] HRESULT RangeSet([in] VARIANT range, [out, retval] LONG* resultRetval);
COM: UnorderedMap 4.0 8 [id(8), helpstring("RangeGet")] HRESULT RangeGet([out] VARIANT* range, [in, defaultvalue(0)] LONG lowerBound, [out, retval] LONG* resultRetval);
COM: UnorderedMap 4.0 9 [id(9), helpstring("SetArray1D")] HRESULT SetArray1D([in] VARIANT range, [out, retval] LONG* resultRetval);
COM: UnorderedMap 4.0 10 [id(10), helpstring("GetArray1D")] HRESULT GetArray1D([out] VARIANT* range, [in, defaultvalue(0)] LONG lowerBound, [out, retval] LONG* resultRetval);
XLL: Function: XLLBignumArithmeticInteger 5.0 1 SumInteger

Суммирует обычные/длинные числа.

LPXLOPER12 SumInteger(LPXLOPER12 Number1, wchar_t* Number2, int BaseIn, int BaseOut)




Возвращает строку (длинное число) если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

HelpRegister12(L"SumInteger", L"UQD%JJ$", L"SumInteger", L"Number1, Number2 , BaseIn(2to36)(Optional) , BaseOut(2to36)(Optional) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"Sum BigNumInteger", L"data type: string, number, array", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticInteger 5.0 2 HelpRegister12(L"MultiplyInteger", L"UQG%JJ$", L"MultiplyInteger", L"Number1, Number2 , BaseIn(2to36)(Optional) , BaseOut(2to36)(Optional) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"Multiply BigNumInteger", L"data type: string, number, array", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticInteger 5.0 3 HelpRegister12(L"SubtractInteger", L"UG%G%JJ$", L"SubtractInteger", L"Number1, Number2 , BaseIn(2to36)(Optional) , BaseOut(2to36)(Optional) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"Subtract BigNumInteger", L"data type: string, number", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticInteger 5.0 4 HelpRegister12(L"DivideInteger", L"UG%G%JJ$", L"DivideInteger", L"Number1, Number2 , BaseIn(2to36)(Optional) , BaseOut(2to36)(Optional) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"Divide BigNumInteger", L"data type: string, number", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticInteger 5.0 5 HelpRegister12(L"PowerInteger", L"UG%JJJ$", L"PowerInteger", L"Number, Exponent , BaseIn(2to36)(Optional) , BaseOut(2to36)(Optional) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"Power BigNumInteger", L"data type: string, number", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticInteger 5.0 6 HelpRegister12(L"ModInteger", L"UG%G%JJ$", L"ModInteger", L"Number1, Number2 , BaseIn(2to36)(Optional) , BaseOut(2to36)(Optional) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"BigNumInteger1 MOD BigNumInteger2. The sign of the divisor is ignored, the result is always non-negative", L"data type: string, number", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticInteger 5.0 7 HelpRegister12(L"ConvertBaseInteger", L"UG%JJ$", L"ConvertBaseInteger", L"String , BaseIn(2to36) , BaseOut(2to36) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"Converts a number from one database to another (from 2 to 36)", L"String", L"Base In", L"Base Out ");
XLL: Function: XLLBignumArithmeticInteger 5.0 8 HelpRegister12(L"FactorialInteger", L"UJJ$", L"FactorialInteger", L" n, BaseOut(2to36)(Optional) ", 1, L"XLLBignumArithmeticInteger", L"", helpHttps, L"Factorial of n", L"Number", L"Base Out", L"");
XLL: Function: XLLBignumArithmeticFloat 5.0 1 HelpRegister12(L"SumFloat", L"UQG%JG%$", L"SumFloat", L"Number1 , Number2 , PrecisionOut(Optional) , Separator(Optional) ", 1, L"XLLBignumArithmeticFloat", L"", helpHttps, L"Sum BigNumFloat, MAX Precision = 32734 char", L"data type: string, number, array", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticFloat 5.0 2 HelpRegister12(L"MultiplyFloat", L"UQG%JG%$", L"MultiplyFloat", L"Number1 , Number2 , PrecisionOut(Optional) , SeparatorIn(Optional) , SeparatorOut(Optional) ", 1, L"XLLBignumArithmeticFloat", L"", helpHttps, L"Multiply BigNumFloa, MAX Precision = 32734 chart", L"data type: string, number, array", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticFloat 5.0 3 HelpRegister12(L"SubtractFloat", L"UG%G%JG%$", L"SubtractFloat", L"Number1 , Number2 , PrecisionOut(Optional) , SeparatorIn(Optional) , SeparatorOut(Optional) ", 1, L"XLLBignumArithmeticFloat", L"", helpHttps, L"Subtract BigNumFloat, MAX Precision = 32734 char", L"data type: string, number", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticFloat 5.0 4 HelpRegister12(L"DivideFloat", L"UG%G%JG%$", L"DivideFloat", L"Number1 , Number2 , PrecisionOut(Optional) , SeparatorIn(Optional) , SeparatorOut(Optional) ", 1, L"XLLBignumArithmeticFloat", L"", helpHttps, L"Divide BigNumFloat, MAX Precision = 32734 char", L"data type: string, number", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticFloat 5.0 5 HelpRegister12(L"PowerFloat", L"UG%JJG%$", L"PowerFloat", L"Number , Exponent  , PrecisionOut(Optional) , SeparatorIn(Optional) , SeparatorOut(Optional) ", 1, L"XLLBignumArithmeticFloat", L"", helpHttps, L"Power BigNumFloat, MAX Precision = 32734 char", L"data type: string, number", L"data type: string, number", L"");
XLL: Function: XLLBignumArithmeticFloat 5.0 6 HelpRegister12(L"RootFloat", L"UG%JG%$", L"RootFloat", L"Number , PrecisionOut(Optional) , SeparatorIn(Optional) , SeparatorOut(Optional) ", 1, L"XLLBignumArithmeticFloat", L"", helpHttps, L"Root BigNumFloat, MAX Precision = 32734 char", L"data type: string, number", L"data type: number", L"");
XLL: Function: XLL 5.0   FilterUnicodeChar

Получить/удалить любые символы Unicode из строки (отфильтровать)

LPXLOPER12
FilterUnicodeChar(XCHAR * StringIn, XCHAR * EnableChar, XCHAR * DisableChar)
Параметры функции:
1.
StringIn - входящая строка
2.
EnableChar - символы включаемые в итоговую строку (через "-" указывается диапазон, сам "-" выводится/удаляется если его поставить первым символом или последним в шаблоне)
3.
DisableChar - символы исключаемые из итоговой строки (через "-" указывается диапазон).

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

Возвращает строку с отфильтрованными символами Юникода.
XLL: Function: XLL 5.0   QRcodePrint

Печатает QR-код в ячейке листа Excel (см. https://bedvit.ru/xll/qr/ )

LPXLOPER12
QRcodePrint(wchar_t *  QRcodeText, LPXLOPER12 sizePixel, LPXLOPER12 pixelColorR, LPXLOPER12 pixelColorG, LPXLOPER12 pixelColorB, LPXLOPER12 versionSymbol, LPXLOPER12 levelErrCorrect, LPXLOPER12 widthImage, LPXLOPER12 heightImage, LPXLOPER12 quietZone, LPXLOPER12 left, LPXLOPER12 top)
Параметры/Аргументы функции QRcodePrint :
1.
QRcodeText - что печатаем, строка(обязательное).
2.
SizePixel - размер пикселя (не картинки, а квадратика в QR), по умолчанию 4 (минимально рекомендуемый)
3.
PixelColorR =0 цвет RGB (0-255) если хотим цветную картинку (по умолчанию черный)
4.
PixelColorG = 0
5.
PixelColorB =0
6.
VersionSymbol - версия QR кода (1-40) (по умолчанию = 0-выбор автоматом), см. ниже
7.
LevelErrCorrect - уровень коррекции ошибок (0-3, по умолчанию = 1 ~15%), см. ниже
8.
WidthImage - постоянная ширина (т.к. при кодировании разного размера данных размер QR меняется). Если хотим постоянный размер - проставляем. По умолчанию "-1" (размер фактический)
9.
HeightImage - постоянная высота, тоже, что и п.8
10.
QuietZone - Размер в модулях зоны тишины (>=0, по умолчанию = 4). Quiet zone — это область, отделяющая границу штрих-кода от фона и других изображений. Начиная с версии xll - v2.0.1.6
11.
Left - отступ от левого верхнего угла ячейки с функцией (рекомендуется оставлять значение по умолчанию = 0)
12.
Top - тоже, что и п.11 (рекомендуется оставлять значение по умолчанию = 0)
п.11,12 рекомендовано использовать, только тогда, когда есть понимание, как это все работает (см.ниже). В обратном случае может быть ситуация, когда изменили размер ячейки или изменили 11 и/или 12 параметр, и теперь QR - печатается в другой ячейке, а в предыдущей он уже не удалится, останется до ручного удаления.

Важно: Ячейка в которую помещается QR-код предварительно очищается от старых версий QR.
Если QR-код больше не нужен можно удалить вручную или задать пустую строку для первого параметра функции (старый QR-код удалится, новый не создастся). Важно! QR-код при этом должен находится (его левый верхний угол) в рамках ячейки, в которой находится функция QRcodePrint(), в противном случай картинка не удалится.

Результат: При удаче, возвращается закодированная в QR-коде строка, при ошибке - "#ЧИСЛО!"
XLL: Function: XLL 5.0   TextJoinXLL

Объединяет текст из нескольких строк (выделенного диапазона), вставляя между текстовыми значениями указанные разделитель(и) . Можно задать массив разделителей. Введенные числа будут считаться текстом.

LPXLOPER12
TextJoinXLL(LPXLOPER12 range, LPXLOPER12 delimiter, BOOL ignoreEmpty)
Параметры функции:
1.r
ange - массив/диапазон строк
2.d
elimiter - строка-разделитель (опционально = "")
3.i
gnoreEmpty - игнорировать пустые ячейки в Range (опционально = 0 - не игнорировать)

Аналог TextJoin(ОБЪЕДИНИТЬ) от Microsoft (https://support.microsoft.com/en-gb/office/textjoin-function-357b449a-ec91-49d0-80c3-0e8fc845691c)
Если объединенная строка содержит свыше 32767 символов (ограничение для ячейки), функция вернет ошибку #ЧИСЛО!.

Возвращает строку.
XLL: Function: XLL 5.0   HelpXLL

Возвращает строку, содержащую все основные данные по работе надстройки, аналогичные данным в команде меню "XLL Help"

LPXLOPER12
HelpXLL()
Параметры функции:
1.Без параметров

Возвращает строку, содержащую все основные данные по работе надстройки, аналогичные данным в команде меню "XLL Help"
XLL: Function: XLL 5.0   CoCreateGuidXLL

Создает GUID — уникальное 128-битное целое число, используемое для CLSID и идентификаторов интерфейса.

LPXLOPER12
CoCreateGuidXLL(int liteMode)
Параметры функции:
1.
liteMode - режимы вывода: 0 - стандартный "{E06AD101-5907-474B-8506-A7CD0149537F}", 1 - упрощенный  "c883f002273a4c63ae52f91c787ba1e9" (в нижнем регистре без дефисов и фигурных скобок)

Возвращает строку в зависимости от выбранного режима вывода.
XLL: Function: XLL 5.0   LikeXLL

Используется для сравнения двух строк.

LPXLOPER12
LikeXLL(XCHAR * string, XCHAR * pattern)
Параметры функции:
1.
string - входящая строка
2.
pattern - шаблон, маска для сравнения со строкой

Аналог оператора LIKE от Microsoft (https://learn.microsoft.com/ru-ru/office/vba/language/reference/user-interface-help/like-operator)
с таким же набором правил составления маски и с таким же возвращаемым результатом

Предоставляет универсальное средство для сравнения строк. Возможности сопоставления шаблона позволяют использовать подстановочные знаки, списки знаков или диапазоны знаков в любой комбинации, чтобы сопоставить строки. В следующей таблице представлены знаки, разрешенные для использования в аргументе pattern, и объясняется, чему они соответствуют:
Знаки в pattern - Сопоставление в string
? - Любой отдельный знак.
* - Ноль или больше знаков.
# - Любая однозначная цифра (0–9).
[ charlist ] - Любой отдельный знак, представленный в charlist.
[ !charlist ] - Любой отдельный знак, не представленный в charlist.

Группа из одного или нескольких символов ( charlist ), заключенная в квадратные скобки ([ ]), может использоваться для сопоставления с любым одним символом в строке и может включать практически любой код символов, включая цифры.

 Примечание

Чтобы получить сопоставление для специальных знаков, а именно для левой квадратной скобки ([), вопросительного знака (?), знака номера (#) и звездочки (*), заключите их в квадратные скобки. Знак правой квадратной скобки (]) не может использоваться в рамках группы для сопоставления самому себе, однако может использоваться за пределами группы как отдельный знак.

С помощью дефиса (-), разделяющего нижнюю и верхнюю границы диапазона, charlist может использоваться для определения диапазона знаков. Например, приводит к совпадению, [A-Z] если соответствующая позиция символов в строке содержит прописные буквы в диапазоне от A до Z. Несколько диапазонов могут включаться в квадратные скобки без использования каких-либо разделителей.

Также имеются другие важные правила для сопоставления шаблона:

Восклицательный знак (!) в начале charlist означает, что выполняется сопоставление, если любой знак, кроме знаков, указанных в charlist, будет найден в аргументе string. При использовании вне квадратных скобок восклицательный знак сопоставляется самому себе.
Дефис (-) может отображаться в начале (но после восклицательного знака, если он используется) или в конце charlist для сопоставления самому себе. На любой другой позиции дефис используется для указания диапазона знаков.
При задании диапазона знаков они должны отображаться по возрастающему порядку сортировки (от наименьшего к наибольшему). [A-Z] является допустимым шаблоном, но [Z-A] не является.
Последовательность [] символов считается строкой нулевой длины ("").

Возвращает TRUE or FALSE в зависимости от итога сравнения строки с шаблоном.
XLL: Menu 5.0   XLL Help

"О Продукте". Форма с информацией о продукте.

LPXLOPER12
XLLcmdHelp(XCHAR* param, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Открыть

Открыть и зарузить сохраненные настройки и данные

LPXLOPER12
XLLcmdOpen(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Сохр.как

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

LPXLOPER12
XLLcmdSaveAs(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Влияющ.

Показать влияющие ячейки (на выделенный массив)

LPXLOPER12
XLLcmdTracePrecedents(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Зависим.

Показать зависимые ячейки (от выделенного массива)

LPXLOPER12
XLLcmdTraceDependents(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Убрать

Убрать все стрелки

LPXLOPER12
XLLcmdRemoveArrows(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   ...(список числовых форматов)

Числовой формат (NumberFormat) применить к выделенным ячейкам/сохранить в список форматов/удалить из списка форматов

LPXLOPER12
XLLcmdSetNumberFormat(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Ув.разряд

Увеличить разрядность числа

LPXLOPER12
XLLcmdIncreaseDecimal(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Ум.разряд

Уменьшить разрядность числа

LPXLOPER12
XLLcmdDecreaseDecimal(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Дата

Конвертировать дату, сохраненную как текст - в дату, в выделенном диапазоне или на всем листе (в случае, если выделена одна ячейка)

LPXLOPER12
XLLcmdTextToNumber(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Число

Конвертировать число, сохраненное как текст с пробелом или апострофом - в число, в выделенном диапазоне или на всем листе (в случае, если выделена одна ячейка).

LPXLOPER12
XLLcmdTextSpaseToNumber(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Связи

Разорвать связи на текущем ЛИСТЕ с другими ЛИСТАМИ этой книги и ВНЕШНИМИ файлами. Формулы с такими связями при разрыве будут преобразованы в принимаемые на данный момент значения.

LPXLOPER12
XLLcmdBreakLinksSheet(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Трансп

Транспонирование данных на месте

LPXLOPER12
XLLcmdTranspose(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdTranspose("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Имена (группа)

Показать скрытые имена, удалить ошибочные, удалить все имена
XLL: Menu 5.0   Показать скрытые имена

Показать скрытые имена (отобразить в диспетчере имён)

LPXLOPER12
XLLcmdVisibleHiddenName(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdVisibleHiddenName("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Удалить ошибочные имена

Удалить все имена с ошибочными значениями (в т.ч. скрытые, не отображаемые в диспетчере имён)

LPXLOPER12
XLLcmdDeleteErrorName(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdDeleteErrorName("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Удалить все имена

Удалить все имена (в т.ч. скрытые, не отображаемые в диспетчере имён)

LPXLOPER12
XLLcmdDeleteNames(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdDeleteNames("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   УФ->Ф (группа)

Перевести условное форматирование в обычный формат
XLL: Menu 5.0   Условный формат в обычный

Перевести условное форматирование в обычный формат ячейки в выделенном диапазоне или на всем листе (в случае, если выделена одна ячейка)

LPXLOPER12
XLLcmdConditionalFormatToFormat(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdConditionalFormatToFormat("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Условный формат в ообычный - все листы

Перевести условное форматирование в обычный формат на всех листах текущей книги (листы, защищенные паролем - не обрабатываются)

LPXLOPER12
XLLcmdConditionalFormatToFormatAllSheets(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdConditionalFormatToFormatAllSheets("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Поиск сл.

Поиск слагаемых для заданной суммы

LPXLOPER12
XLLcmdFindSummands(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdFindSummands("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Повторы

Выделить уникальным цветом группы повторов в выделенном диапазоне или на всем листе (в случае, если выделена одна ячейка) и/или вывести статистику. Выделение цветом нельзя отменить!

LPXLOPER12
XLLcmdDuplicateValues(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdDuplicateValues("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Найти

Найти на текущем листе значения из выделенной ячейки и выделить все ячейки с найденными дубликатами (учитываются значения и результаты формул). «Tab» - переход по найденным (выделенным) ячейкам

LPXLOPER12
XLLcmdFindValues(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdFindValues("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Листы

Вывести на новый лист список всех листов текущей книги (с гиперссылкой)

LPXLOPER12
XLLcmdSheets(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdSheets("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Ошибки

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

LPXLOPER12
XLLcmdErrors(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdErrors("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Ссылки (группа)

Вывести на новый лист список внешних ссылок или список ячеек данной книги, содержащих ссылку на другую книгу(с гиперссылкой)
XLL: Menu 5.0   Список ссылок

Вывести на новый лист список всех внешних ссылок в данной книге

LPXLOPER12
XLLcmdLinksWorkBook(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdLinksWorkBook("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Список ячеек с ссылками

Вывести на новый лист список всех ячеек данной книги, содержащих ссылку на другую книгу(с гиперссылкой)

LPXLOPER12
XLLcmdLinksRangeWorkBook(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdLinksRangeWorkBook("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Упл.данные

Уплотнить данные, удалив пустые (не содержащие данные) строки и столбцы. Обрабатывается весь лист. Эту команду нельзя отменить

LPXLOPER12
XLLcmdCompactValues(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdCompactValues("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Стиль A1

Стиль ссылок A1. Изменение формата ссылок на ячейки в формулах Excel

LPXLOPER12
XLLcmdA1referenceStyle(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdA1referenceStyle("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Стиль R1C1

Стиль ссылок R1C1. Изменение формата ссылок на ячейки в формулах Excel

LPXLOPER12
XLLcmdR1C1referenceStyle(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdR1C1referenceStyle("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Face (группа)

Коллекция иконок Excel по FaceID (около 32 тыс.штук). Можно вывести на лист
XLL: Menu 5.0   Вывести

Вывести все возможные иконки Excel в меню (по ID)

LPXLOPER12
XLLcmdCreateMenuFaceID(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdCreateMenuFaceID("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Удалить

Удалить ранее выведенные иконки Excel из меню

LPXLOPER12
XLLcmdDeleteMenuFaceID(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdDeleteMenuFaceID("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Copy

Копировать формулы для вставки (без смещения адресов). Не используется буфер обмена.

LPXLOPER12
XLLcmdCopyFormulaLocal(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdCopyFormulaLocal("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Paste

Вставить формулы (без смещения адресов). Не используется буфер обмена.

LPXLOPER12
XLLcmdPasteFormulaLocal(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdPasteFormulaLocal("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   VBA store - beta-версия, эксперемент (форма)

Хранилище VBA модулей

LPXLOPER12
XLLcmdVBAModuleStore(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdVBAModuleStore("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Range store (форма)

Шифрование данных алгоритмами AES на листе Excel, шифрования файла пользовательских сохранений, хранение зашифрованных диапазонов формул/значений с листа Excel в файле пользовательских сохранений.

 

Алгоритмы шифрования AES:

    1 - "Без шифрования"
    2 - "AES256:ECB"
    3 - "AES256:CBC"
    4 - "AES256:OFB"
    5 - "AES256:CFB"
    6 - "AES256:CBC-CTS"
    7 - "AES256:CTR"

 

Функционал:
+ Можно шифровать как отдельные значения так и диапазоны/массивы.

+ Шифровать можно на листе, шифровать можно сохраняемые диапазоны и шифровать можно и файл пользовательских сохранений.

+ Шифровать данные можно прям на листе Excel, с дальнейшей расшифровкой нужного диапазона или всего листа в виде значений (value2), так и в виде формул (formula).
+ Зашифрованные данные можно хранить в XLL как в виде значений (value2), так и в виде формул (formula). Формула может содержать максимум 8 тыс. символов
+ Пароль нигде не хранится, его знает только пользователь и при утере, расшифровать данные не получится никому

+ Тип данных и алгоритм шифрования запоминается при зашифровки, и их нужно указывать только при шифровании. При расшифровки нужен только 1 пароль (повтор пароля нужен только для шифрования, для расшифровки достаточно одного-первого)
+ Зашифрованные диапазоны - независимые, т.е. можно каждый отдельный диапазон зашифровать со своим паролем, можно зашифровать диапазон дважды (для гиков)

+ Реализовано автоматическое распознавание разных блоков зашифрованных диапазонов, с разными алгоритмами и их расшифровка разом (см. видео), но должен быть одинаковый пароль для случаев пакетной распаковки (сразу всего листа)
+ Для данных у которых упаковка будет экономить размер итоговой зашифрованной строки (для массивов и длинных строк)  - используется алгоритм сжатия WinAPI:XPRESS_HUFF
+ Реализован механизм (shared string table), как и в Excel, для оптимизации размера одинаковых строк (для массивов), см. особенности ниже.
+ Данные на листе Excel шифруются для каждой ячейки отдельно (для возможности хранить и расшифровывать данные независимо для каждой ячейки)
+ Итоговый результат шифрования (любого типа данных: строки, числа, ошибки и т.д.) - хранится в виде строки (массива зашифрованных байт).

+ Для каждой команды есть всплывающие подсказки

 

 

Особенности:

+ Сохранять диапазон в списке диапазонов можно в зашифрованном виде или не в зашифрованном (в незашифрованном эффективнее сжимаются сохранения т.к. обрабатываются все дубликаты во всех сохранённых диапазонах, а не частично в отдельном диапазоне), но можно шифровать сам файл пользовательских настроек - эффективность сжатия сохраняется.
+ есть возможность автоматически определять границы диапазона, выделяя весь лист или целый столбец или целую строку, см. usedrange
+ добавлена возможность выключать пользовательские сообщения и сообщения в статус-баре Excel


UPD: 03.02.2024 BedvitXLL.dll_v5.1

 

+добавлена возможность использования разных локализаций и разной разрядности Excel при шифровании, дешифровки и сохранении формул/зачений (см. видеосправку ниже).

+добавлена обработка ошибок на листе Excel при шифровании, дешифровки и сохранении формул/значений.

Справочно: в 32-разрядной версии XLL - форма для шифрования - МОДАЛЬНАЯ, т.е. выделить необходимый диапазон нужно ДО открытия формы.



LPXLOPER12
XLLcmdRangeStore(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Архив

Тестовые команды, beta-функционал или команды, которые устарели или были заменены более новыми (в след. версиях библиотеки эти команды могут быть удалены)
XLL: Menu 5.0   v(version)

Текущая версия XLL-библиотеки
XLL: Menu 5.0   f(file)

Версия и расположение активного файла пользовательских настроек (все пользовательские настройки и данные сохраняются в нем сразу же при изменениях )
XLL: Menu 5.0   BedvitCOM: OFF/ON/R

Регистрация библиотеки BedvitCOM в реестре и автоподключение в References (VBA): OFF/ON/R
OFF - нет автоподключения (ни в реестре Windows, ни в References (VBA)
ON - есть автоподключение (и в реестре Windows, и в References (VBA)
R - только регистрация в реестре Windows (нет автоподключения в References (VBA)
Порядок переключений: OFF->ON->R->OFF

LPXLOPER12
XLLcmdRegisterBedvitCOM(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdHelp("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Язык

Язык основного меню и контекстного меню

LPXLOPER12
XLLcmdMenuLanguag(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdMenuLanguag("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   Диалог

Режим диалога для комманд меню XLL (пользовательские сообщения, информация в статус-баре Excel и сообщения об ошибках).
1 - Всё включено (рекомендуется).
2 - Отключить пользовательские сообщения.
3 - Отключить информацию в статус-баре Excel.
4 - Отключить пользовательские сообщения + информацию в статус-баре Excel.

LPXLOPER12
XLLcmdDialogMode(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdDialogMode("1") //Включены все сообщения для данной команды
XLL: Menu 5.0   XLL API

Список команд XLL. Имя команды меню XLL(1й параметр команды-Режим диалога (см.команду 'Диалог'))/Имя кнопки/Описание

Все Команды XLL (с префиксом XLLcmd) зарегистрированы в Excel и их можно вызывать с нужным параметром.

Пример (VBA):
Application.RUN "XLLcmdHelp", "1" 'Вызов фФормы с информацией о продукте.
XLL: Menu 5.0   МЕНЮ

Настройка меню BedvitXLL (основное + контекстное). Можно включать и отключать элементы меню.

LPXLOPER12
XLLcmdMenuSetting(XCHAR* param=0, LPXLOPER12 param2)
param - командная строка XLL API - см. "XLL API":
    1й параметр - Режим диалога для комманд меню XLL - см. "Диалог"
param2 - зарезервирован

Возвращает 0 если команда выполнена успешно и #NUM!(#ЧИСЛО!) если ошибка.

Пример:
XLLcmdMenuSetting("1") //Включены все сообщения для данной команды
Яндекс.Метрика