Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Как сделать отправку в Telegram из макроса VBA Excel, Telegram из макроса VBA Excel
 
Добрый день! Возможно.
Берете символы в кодировке UTF-8, например отсюда https://apps.timwhitlock.info/emoji/tables/unicode
Только \x заменяете на %, чтобы вместо \xE2\x9D\x84 получилось %E2%9D%84
Не удается получить доступ к файлу xlsb через позднее связывание
 
Цитата
написал:
переустановил бы офис. Т.е. снес бы старый полностью, а потом на чистую установил новый.
Спасибо! Помогло
Не удается получить доступ к файлу xlsb через позднее связывание
 
Цитата
написал:
Так нет никакого файла, поэтому и Name нет
Открываю любой excel файл.
Код
    Dim xl As Object

    Set xl = GetObject(, "Excel.Application")

    Debug.Print xl.Workbooks.Count
    Debug.Print xl.Workbooks(1).Name
Для файлов формата xlsb ошибка на xl.Workbooks(1).Name, для xlsx ошибки нет и выводится имя файла.
Не удается получить доступ к файлу xlsb через позднее связывание
 
Цитата
написал:
а может у ошибки и описание с номером есть? У меня ничего не выдает и нормально работают оба кода. Значит проблема где-то на Вашей стороне.
Run-time error '40036'
Application-definder or object-definder error
Не удается получить доступ к файлу xlsb через позднее связывание
 
Цитата
написал:
Так нет никакого файла, поэтому и Name нет
Открываю любой файл формата xlsb и в атлук или word запускаю макрос
Код
    Dim xl As Object

    Set xl = GetObject(, "Excel.Application")

    Debug.Print xl.Workbooks.Count
    Debug.Print xl.Workbooks(1).Name

Здесь Debug.Print xl.Workbooks(1).Name будет ошибка. Если формат excel xlsx - ошибки нет
Не удается получить доступ к файлу xlsb через позднее связывание
 
Код
    Dim xl As Object

    Set xl = GetObject(, "Excel.Application")

    Debug.Print xl.Workbooks.Count
    Debug.Print xl.Workbooks(1).Name

При одно открытом файле xlsb

код Debug.Print xl.Workbooks.Count выдает 1,

Debug.Print xl.Workbooks(1).Name - выдает ошибку
Изменено: dimbaks - 09.12.2021 14:26:24
Не удается получить доступ к файлу xlsb через позднее связывание
 
Добрый день! У меня есть макрос в аутлук, который берет данные из открытого ексель-файла и переносит их в текст письма. Доступ к ексель получаю с помощью позднего связывания. Для файлов формата xlsx всё работает без проблем. Если формат файла xlsb, то макрос видит что книга открыта (xl.Workbooks.Count выдает 1), но получить какие-либо свойства открытого файла не удается (например xl.Workbooks(1).Name).
Если делать это через раннее связывание, то всё нормально.
Для наглядности прикладываю word с 2 макросами.
GetExcelAsObject - здесь переменная объявлена как Object и доступа к свойствам xlsb файлов нет .
GetExcelAsExcelApplication - здесь переменная объявлена как Excel.Application - с xlsb файлами можно работать.
Это баг/фича или я что-то делаю не так?
(офис 365)
SQL-запрос к Excel xml 2003
 
Спасибо, читаю, правда пока непонятно.
С программированием сталкивался только на уровне екселя.
Обычно использую вот такую функцию

Код
Function ADOImportExcel(DbFullName As String, arSQL As String, TargetCell As Range)
    Dim objRS As Object
    
    'формируем рекордсет
    Set objRS = CreateObject("ADODB.Recordset")
    objRS.Open arSQL, _
        Join$(Array("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=", _
          DbFullName, ";Extended Properties=""Excel 8.0;"""), vbNullString)
    
    'скопируем данные
    TargetCell.CopyFromRecordset objRS
    
    ' почистим за собой
    Set objRS = Nothing
End Function 

хотелось бы понять, как исправить строчку "Provider=Microsoft.Jet.OLEDB.4.0", чтобы в качестве источника использовать файлы Excel xml 2003?
SQL-запрос к Excel xml 2003
 
Приветствую всей посетителей форума.
Собственно вопрос: приходится обрабатывать выгрузки, которые формируются в формате Excel xml 2003.
Какую строку подключения прописать, чтобы работать с ними с помощью sql-запросов?
Страницы: 1
Наверх