powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Создание нового листа в Excel
4 сообщений из 4, страница 1 из 1
Создание нового листа в Excel
    #38565559
MiroMAX_99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, пожалуйста, у нас office 2003, и в excel создаею новый лист

lole_oleobject = CREATE OLEObject
lole_oleobject.ConnectToNewObject("excel.application")
lole_oleobject.Application.Workbooks.Open (имя файла)
lole_oleobject.Application.WorkSheets.Add()
lole_oleobject.Application.ActiveSheet.Name = "имя нового листа"
.....
DESTROY lole_oleobject

НО... он формируется ПЕРЕД активным (фактически становится самым первым).
Как сделать так, чтобы лист вставлялся в КОНЕЦ?
...
Рейтинг: 0 / 0
Создание нового листа в Excel
    #38565810
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MiroMAX_99,
Вы вообще ответы на СВОИ вопросы в других ветках читаете?
...
Рейтинг: 0 / 0
Создание нового листа в Excel
    #38567667
MiroMAX_99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Читаю. Вот только что можно сделать в Excel в PB не подходит. Поэтому и спрашиваю в разных ветках.
...
Рейтинг: 0 / 0
Создание нового листа в Excel
    #38567894
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MiroMAX_99Читаю. Вот только что можно сделать в Excel в PB не подходит. Поэтому и спрашиваю в разных ветках.
видать не всё прочитали ;)
Вот Ваш пример + то, что Вам отвечали на форуме. Все работает

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Integer li_result, n
OLEObject oleEx, ole_null

oleEx= CREATE OLEObject
li_result = oleEx.ConnectToNewObject('excel.application')

if li_result = 0 then
	oleEx.Workbooks.Open ('C:\test_add.xls')
	SetNull(ole_null)

	n = oleEx.ActiveWorkBook.WorkSheets.Count /*кол-во листов "до"*/
	oleEx.ActiveWorkBook.WorkSheets.Add( ole_null, oleEx.ActiveWorkBook.WorkSheets(n))	/*добавить лист в конец*/
	n = oleEx.ActiveWorkBook.WorkSheets.Count /*кол-во листов "после"*/
	oleEx.ActiveWorkBook.WorkSheets(n).Name = "Name" /*задать имя листа n*/
	oleEx.ActiveWorkBook.WorkSheets(n).Cells(1, 1).Value = "value" /*установить значение в ячейку A1 листа n*/
	oleEx.ActiveWorkbook.Save() /*сохранить изменения*/
	oleEx.application.Quit
	oleEx.DisconnectObject()
else
	Messagebox('excel.application','Errror ConnectToNewObject', stopsign!)
end if

DESTROY oleEx
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Создание нового листа в Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]