Тема: Проблемы с CopyTableToClipboard
Всем привет!!!!!!!
Работаю в приложение QlikView.
Задача: Дополнить Excel таблицей из QV. Скрипт выполняется, НО! При вставке таблицы в Excel, во всех ячейках удаляются лишние пробелы! А это для нас очень и очень плохо, т.к. все должно быть идентично оригиналу
Например:
Копирую
"Привет друг" с шестью пробелами
Вставляю в Excel и получаю
"Привет друг" с одним пробелом м/ду словами.
Вот непосредственно скрипт:
Sub export
'********* Переменные ***********************************************************************
Dim FSO,objFSO,FileName
iRow = 2
Set FSO = CreateObject("Scripting.FileSystemObject")
'********* Обращаемся к переменной хранящей значения директории к файлу *********************
Set d = ActiveDocument.Variables("Path")
'********* Присвоение значения директории переменной MyDirName ******************************
MyDirName = d.GetRawContent
'********* Обращаемся к переменной хранящей значения имени файла ****************************
Set n = ActiveDocument.Variables("Name")
'********* Присвоение значения директории переменной MyDirName ******************************
Name = n.GetRawContent
'********* Полный путь: директория + Имя файла Excel ****************************************
FileName = MyDirName&"\"&Name&".xlsx"
'********** Создаем объект Excel ****************************************************
Set xlApp = CreateObject("Excel.Application")
'********** Устанавливаем видимость объекта *****************************************
xlApp.Visible = true
'*********** Назначаем переменные для открытия книги, листа, объекта ****************
Set xlWB = xlApp.Workbooks.Open(FileName)
Set xlSheet = xlWB.Worksheets(1)
Set obj = ActiveDocument.GetSheetObject(ChartName)
'*********** Активируем лист ********************************************************
xlSheet.Activate
'*********** Ищем последнюю заполненую ячейку и переходим на пустую *****************
While Not (Isempty(xlSheet.Cells(iRow, 1)))
iRow = iRow+1
Wend
'*********** Обращаемся к таблице из приложения и копируем её в буфер ***************
Set txt1 = ActiveDocument.GetSheetObject("CH27")
txt1.CopyTableToClipboard True
'*********** Выбираем пустую ячейку и вставляем из буфера таблицу *******************
xlSheet.Cells(iRow,1).Select
xlSheet.Paste
'*********** Удаляем из вставленой таблицы заголовки ********************************
For i=iRow to iRow+1
If (xlSheet.Range("A" & i).Value = "Номенклатура ") Then
xlSheet.Range("A" & i).EntireRow.Delete
End If
Next
'*********** Сохраняем, закрываем книгу, закрываем объект Excel *********************
xlWB.Save
xlWB.Close
xlApp.Quit
' Конец
End subОчень расчитываю на вашу помощь!!!

