Список форумов Форум Libreoffice

Форум Libreoffice

Добро пожаловать на Форум Libreoffice!
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

English French German Italian Portuguese Russian Spanish
Writer - вставка из массива

 
Начать новую тему   Ответить на тему    Список форумов Форум Libreoffice -> Basic
Предыдущая тема :: Следующая тема  
Автор Сообщение
YudinAlex



Репутация: 0    

Зарегистрирован: 11.07.2013
Сообщения: 22

СообщениеДобавлено: Чт Авг 15, 2013 4:21 pm    Заголовок сообщения: Writer - вставка из массива Ответить с цитатой

Open Office Writer (аналог MS Office Wordl).
Создана таблица в Writer'е, заполнены заголовки в первой строке.
Как из Clipboard (CSV-формат) или из массива добавить в таблице со второй строки Writer'а строки с колонками?
Через Clipboard (тоже не умею) в Опене проблемы с уточняющей формой, которую юзеру показывать низзя.
Если есть решение без показа этой формы - класс!
Если нет (вероятнее всего)- надежда на вставку из массива.
Как это просто в MS Word и как это горбато в Опене...
Да, не предлагайте заполнение таблицы Writer'а по-ячейкно.
Это сам знаю как делать, но это работает долго.
Writer и так медленнее, чем Иксел.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
hasim



Репутация: 0    

Зарегистрирован: 28.05.2012
Сообщения: 32

СообщениеДобавлено: Пт Авг 16, 2013 6:03 am    Заголовок сообщения: Re: Writer - вставка из массива Ответить с цитатой

YudinAlex писал(а):

Как это просто в MS Word...

В смысле: "в один операнд (не по-ячеейно) заполнить таблицу Word данными из массива"?
Интересно, как?
Если есть такая функция в Word, возможно есть аналог в Writer.
_________________
Стильные предметы интерьера
http://dilash.ru
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
YudinAlex



Репутация: 0    

Зарегистрирован: 11.07.2013
Сообщения: 22

СообщениеДобавлено: Пт Авг 16, 2013 6:32 am    Заголовок сообщения: Ответить с цитатой

Такая функция есть в OO Calc
m.loRange.SetDataArray( @laPasteArray )

C райтером не знаю как. Как с таблицей райтера манипулировать?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
hasim



Репутация: 0    

Зарегистрирован: 28.05.2012
Сообщения: 32

СообщениеДобавлено: Пт Авг 16, 2013 7:25 am    Заголовок сообщения: Ответить с цитатой

Для Writer (7 строк х 5 столбцов):
Цитата:
Sub Main
Dim arr(6,4) As Integer

For s=0 To 6
For c=0 To 4
arr(s,c)=s+c*10
Next c
Next s

oDoc=ThisComponent

oDoc.TextTables.getByIndex(0).setDataArray(arr)

End Sub


Посмотрите еще:
basic, cursors, delimited text and .uno:ConvertTextToTable
_________________
Стильные предметы интерьера
http://dilash.ru
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
YudinAlex



Репутация: 0    

Зарегистрирован: 11.07.2013
Сообщения: 22

СообщениеДобавлено: Пн Авг 19, 2013 10:04 am    Заголовок сообщения: Ответить с цитатой

Получилось! Спасибо!
У меня под Фоксом это
Код:
loTables= loDoc.TextTables
loTable = loTables.getByIndex(0)
loRange = loTable.getCellRangeByName('A2:C3')
loRange.setDataArray(@laArray)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Форум Libreoffice -> Basic Часовой пояс: GMT
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Вы можете бесплатно создать форум на MyBB2.ru, RSS