Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Excel
 
 автор: час   (01.11.2008 в 10:36)   личное сообщение
 
 

Если у клиента везде стоят опенофисы, там же будет и моя программа с рантаймом .mdb
Есть ли шанс вести вывод информации в формате ___.xls .
Они потом где то это всё просматривают, где имеется Excel.

  Ответить  
 
 автор: osmor   (01.11.2008 в 10:47)   личное сообщение
 
 

опенфис легко открывает/сохраняет файлы в формате Excel, так что можно никуда не носить.
А вот удастся вывести в формат excel (во всяком случае до 2007) там где его нет, не получится, но не проверял, т.к. просто все переписал на вывод в OOCalc
http://hiprog.com/index.php?option=com_content&task=view&id=251661586

  Ответить  
 
 автор: час   (01.11.2008 в 10:53)   личное сообщение
 
 

Если вывести в OOCalc - то Excel этот формат не понимает .....???
А то , что ты , Олег этм вплотную занимаешься и эту статью выложил - это я в курсе..... - спасибо.

  Ответить  
 
 автор: osmor   (01.11.2008 в 11:01)   личное сообщение
 
 

уже не занимаюсь :-)
если вывести OOCalc и сохранить в формате Excel - то оба смогут открыть
а если в формате ооо, то Excel открыть не сможет

  Ответить  
 
 автор: час   (02.11.2008 в 18:36)   личное сообщение
 
 

А для сохранения в формате .xls
достаточно только расширение поменять или это не так фсё просто.....?

  Ответить  
 
 автор: osmor   (04.11.2008 в 20:46)   личное сообщение
 
 

нет. Нужно сохранять в формате Excel. OOCalc умеет сохранять в разных форматах (PDF и XLS в их числе)

  Ответить  
 
 автор: час   (05.11.2008 в 19:54)   личное сообщение
 
 

Пока только начал разбираться - запустил пример использования..и ........ обалдел.
Огромное спасибо , ОЛЕГ!!!!

  Ответить  
 
 автор: osmor   (05.11.2008 в 20:42)   личное сообщение
 
 

Блин, приятно когда не в пустоту, а кому-то пригодилось.

  Ответить  
 
 автор: час   (05.11.2008 в 21:06)   личное сообщение
 
 

Тока вот возник вопрос,
Слепо следовал примеру
Получил однако в нос
И в промежность от Гемеры......


cUrl = ConvertToUrl("c:\" + Sheet_Name + ".xls")
Call oBook.storeToURL(cUrl, aNoArgs)
'закрываем созданную книгу
Call oBook.Close(False)


Открыв в excel обнаружил - не тот формат.......

  Ответить  
 
 автор: osmor   (06.11.2008 в 08:53)   личное сообщение
 
 

естественно, по умолчанию т.е. с aNoArgs, сохраняется в формате OOO

для сохранения в формате Excel нужно делать так:


cUrl = ConvertToUrl("c:\" + Sheet_Name + ".xls")
Set prop(0) = MakePropertyValue("FilterName", "MS Excel 97")
Call oBook.storeToURL(cUrl, prop)

  Ответить  
 
 автор: час   (06.11.2008 в 09:33)   личное сообщение
 
 

Хорошо так и сделаем......
Я так понял - из всего списка ( MakePropertyValue ) отфильтровываем нужное ("FilterName", "MS Excel 97") и сохраняем .(oBook.storeToURL).............................

  Ответить  
 
 автор: osmor   (06.11.2008 в 10:23)   личное сообщение
 
 

нет.
создаем свойство с именем FilterName и значением "MS Excel 97"
и это свойство используем при сохранении storeToURL

  Ответить  
 
 автор: час   (06.11.2008 в 13:50)   личное сообщение
 
 


______________ _______________
--------------------------------------

  Ответить  
 
 автор: час   (06.11.2008 в 20:32)   личное сообщение
 
 

А как объединить несколько ячеек?

Я вот попробовал в ООО создал макрос, но никак его прикрутить к Access не получается.


sub Main
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$A$6:$D$6"


dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:ToggleMergeCells", "", 0, Array())


end sub

  Ответить  
 
 автор: час   (06.11.2008 в 21:30)   личное сообщение
 
 

нашёл пример , но ................


Sub CalcGroupingExample()
Dim oDoc As Object, oRange As Object, oSheet As Object
oDoc = ThisComponent

oSheet = oDoc.Sheets.getByName("Sheet1")
' Parms are (left, top, right, bottom)
oRange = oSheet.getCellRangeByPosition(2, 1, 3, 2)
'Could also use COLUMNS
Call oSheet.Group(oRange.getRangeAddress(), com.sun.star.Table.TableOrientation.ROWS)
Print "I just grouped the range"
Call oSheet.unGroup(oRange.getRangeAddress(), com.sun.star.Table.TableOrientation.ROWS)
Print "I just ungrouped the range"
End Sub

  Ответить  
 
 автор: час   (06.11.2008 в 21:46)   личное сообщение
 
 

чёта наклёвывается


Set oRange = oSheet.getCellRangeByPosition(i, 1, i, j)
   'Set oRange = oSheet.getCellRangeByName(strRange)
   oRange.Merge (True)
   oRange.ParaAdjust = intParaAdjust

  Ответить  
 
 автор: час   (06.11.2008 в 21:48)   личное сообщение
 
 

ооооооооооо Клюнуло:


Call oSheet.getCellByPosition(1, j).setString("Итого по реестру:")
Set oRange = oSheet.getCellRangeByPosition(1, j, 5, j)
   'Set oRange = oSheet.getCellRangeByName(strRange)
   oRange.Merge (True)
   oRange.ParaAdjust = intParaAdjust

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList