Неофициальный форум разработчиков QlikView и Qlik Sense

Форум разработчиков QlikView и Qlik Sense. Получи любые ответы на вопросы по QlikView и Qlik Sense в течении нескольких часов!

Вы не вошли.

Готовые решения на платйорме QlikView

#1 2016-02-26 10:20:02

Yulia
Участник
Зарегистрирован: 2016-01-13
Сообщений: 34
Windows XPChrome 48.0.2564.116

Экспорт в Excel через макрос

Добрый день!

Для любой таблицы/диаграммы в приложении по правой кнопке есть функция "Отправить в Excel" или "Отправить значения в Excel".

Подскажите, пожалуйста, как вызвать эту функцию через макрос, то есть вызвать по определенной кнопке или по определенному изменению значения переменной?

Добавлено спустя 2 ч 15 мин 51 с:
Нашла вариант, но он меня не до конца устраивает:

1. В переменную objectNm пишу имя объекта, который хочу выгрузить в Excel
2. Запускаю макрос sendToExcel:

sub sendToExcel
  objectNm = ActiveDocument.Variables("objectNm").GetContent.String
  set obj = ActiveDocument.GetSheetObject(objectNm)   
  obj.SendToExcel 
  set obj = nothing
end sub

Вопрос: как сделать, чтобы выгружался не во вновь создаваемый файл, а в определенный по определенному пути?

Заранее спасибо!

Редактировался Yulia (2016-02-26 12:36:10)


новичок в QlikView

Неактивен

#2 2016-02-26 13:44:27

Prive
Участник
Зарегистрирован: 2015-12-18
Сообщений: 27
Windows 7Mozilla 5.0

Re: Экспорт в Excel через макрос

Попробуйте через "ExportBiff"

Пример:

Function SaveToExcel
   
    call ExportToExcel("CH02", "D:\Files\Отчёт_по_вакансиям_за_" & ActiveDocument.Evaluate("date(today(1))") & ".xls")

end Function

sub ExportToExcel(ObjectId, FilePath)

    dim FileName
    Set FileName = ActiveDocument.GetSheetObject(ObjectId)
    FileName.ExportBiff FilePath
    Set FileName = nothing

end sub

Неактивен

#3 2016-02-26 17:51:19

Yulia
Участник
Зарегистрирован: 2016-01-13
Сообщений: 34
Windows XPChrome 48.0.2564.116

Re: Экспорт в Excel через макрос

Большое спасибо, получилось!

а не подскажите, как проверить, что Excel-файл не открыт на редактирование,
потому что если открыт, то никакой ошибки не выдает, но и не перезаписывает?


новичок в QlikView

Неактивен

#4 2016-02-29 12:22:46

Prive
Участник
Зарегистрирован: 2015-12-18
Сообщений: 27
Windows 7Mozilla 5.0

Re: Экспорт в Excel через макрос

Можете таким макросом проверить открыт файл только для чтения или нет.

sub test

set XLApp = CreateObject("Excel.Application")

set XLDOC = XLApp.Workbooks.Open ("C:\Tasks\1.xlsx")

IF XLApp.ActiveWorkbook.ReadOnly THEN

    MSGBOX "READ_ONLY MODE"
    XLApp.Quit 

END IF

end sub

Неактивен

#5 2016-03-17 15:05:48

Yulia
Участник
Зарегистрирован: 2016-01-13
Сообщений: 34
Windows XPChrome 49.0.2623.87

Re: Экспорт в Excel через макрос

Добрый день!
Можно ли проверить, открыт файл Excel или нет, при выполнении загрузки данных из него?

Заранее спасибо!


новичок в QlikView

Неактивен

#6 2016-05-25 16:32:35

Yulia
Участник
Зарегистрирован: 2016-01-13
Сообщений: 34
Windows XPChrome 49.0.2623.112

Re: Экспорт в Excel через макрос

Добрый день!
подскажите, пожалуйста, я использую ваш макрос:
sub ExportToExcel(ObjectId, FilePath)
    dim FileName
    Set FileName = ActiveDocument.GetSheetObject(ObjectId)
    FileName.ExportBiff FilePath
    Set FileName = nothing
end sub

но он НЕ перезаписывает файл FilePath, если последний уже был ранее сформирован.
Нельзя ли добавить (как?) флаг перезаписи?
Заранее спасибо!


новичок в QlikView

Неактивен

#7 2016-07-28 20:10:47

Prive
Участник
Зарегистрирован: 2015-12-18
Сообщений: 27
Windows 7Firefox 47.0

Re: Экспорт в Excel через макрос

Yulia пишет:

Добрый день!
подскажите, пожалуйста, я использую ваш макрос:
sub ExportToExcel(ObjectId, FilePath)
    dim FileName
    Set FileName = ActiveDocument.GetSheetObject(ObjectId)
    FileName.ExportBiff FilePath
    Set FileName = nothing
end sub

но он НЕ перезаписывает файл FilePath, если последний уже был ранее сформирован.
Нельзя ли добавить (как?) флаг перезаписи?
Заранее спасибо!

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

Неактивен

#8 2016-08-08 12:08:57

Yulia
Участник
Зарегистрирован: 2016-01-13
Сообщений: 34
Windows XPChrome 49.0.2623.112

Re: Экспорт в Excel через макрос

Добрый день! Да, вы правы: "подвисал" процесс файла, если файл не занят никаким процессом, но нормально перезаписывается. Спасибо)


новичок в QlikView

Неактивен

Сейчас в этой теме форумчан: 0, гостей: 1
[Bot] claudebot

Подвал форума

Под управлением FluxBB
Модифицировал Visman

[ Сгенерировано за 0.015 сек, 10 запросов выполнено - Использовано памяти: 1.5 Мбайт (Пик: 1.64 Мбайт) ]