twist писал(а):Open "c:\1.xls" For Append As #1
Option Explicit
Private Sub Command1_Click()
Dim C1 As Object
Dim W1 As Object
Dim S1 As Object
Set C1 = CreateObject("Excel.Application")
Set W1 = C1.Workbooks.Open("D:\temp\1.xls")
Set S1 = W1.Worksheets(1)
S1.Cells(1, 1) = "Привет!"
Set S1 = Nothing
W1.Close 1
Set W1 = Nothing
Set C1 = Nothing
End Sub
twist писал(а):Денис! просто гигантское спасибо! все получилось!
Денис писал(а):OpenOffice разрабатывают дольше семи лет
Денис писал(а):и все эти годы это красноглазое поделие не могло правильно читать файлы офиса
qwertyhp писал(а):Просто, если существует возможность монтировать файл(ы) (например, отчёты), НЕ открывая их - это лучший вариант для работы.
iGrok писал(а):Сам-то понял, что написал?
qwertyhp писал(а):а вот с цветами и рамками не получается... для них требуется обязательное выделение области (т.е. надо открывать файл) - или я чего-то не понимаю?
qwertyhp писал(а):Просто, если существует возможность монтировать файл(ы) (например, отчёты), НЕ открывая их - это лучший вариант для работы.
Ну я бы не был столь категоричен. Скажем, кое-что кое-куда. На самом деле не так уж много ПО поддерживает OLE.SLIM писал(а):И вообще, вставлять все во все.
SLIM писал(а):Ты прав конечно.
Я вообще, на самом деле, кроме как от создателей этого самого OLE, ничего путнего не видел.
Да как всегда, путаница терминов. Не OLE, а COM-сервер.Денис писал(а):SLIM писал(а):Ты прав конечно.
Я вообще, на самом деле, кроме как от создателей этого самого OLE, ничего путнего не видел.
А как же 1С? Он регает в системе свой OLE-сервер. Я, правда, сам не пользовался, но батя грит, "малаца, хорошо зделоли".
SLIM писал(а):А что у 1С? COM?
SLIM писал(а):А вообще, раз уж пошла тема.
Кто мне скажет какой-ниубудь распространенный чистый COM-сервер.
Я пока только OLE встречал.
MSDN писал(а):At the heart of OLE 2 is the "OLE Component Object Model", or COM. COM defines a standard for how cooperating objects communicate to one another. This includes the details of what an "object" looks like, including how methods are dispatched on an object. COM also defines a base class, from which all COM compatible classes are derived. This base class is IUnknown. Although the IUnknown interface is referred to as a C++ class, COM is not specific to any one language — it can be implemented in C, PASCAL, or any other language that can support the binary layout of a COM object.
OLE refers to all classes derived from IUnknown as "interfaces." This is an important distinction, since an "interface" such as IUnknown carries with it no implementation. It simply defines the protocol by which objects communicate, not the specifics of what those implementations do. This is reasonable for a system that allows for maximum flexibility. It is MFC's job to implement a default behavior for MFC/C++ programs.
Имеется ввиду, что сначала COM-dll были вообще без tlb, даже отдельным файлом?ActiveX = COM+TLB+IDispatch.
Сейчас этот форум просматривают: Google-бот и гости: 75