Solved

EXCEL & DELPHI

Posted on 1997-03-11
8
1,285 Views
Last Modified: 2010-08-05
I have an application written in Delphi.
From this Delphi program, I need to execute Excel (previously configured), to fill some cells in a choosen sheet, launch a macro linked to the choosen sheet, and re-read the computed values from some choosen cells.
Maybe I've to use TOleObject or OLE method itself, but I don't know how to and need a focused related example.

Regards

poli_amf@computech.it
0
Comment
Question by:straker
8 Comments
 

Expert Comment

by:pscadden
ID: 1334872
For starters get the TExcel component from the Delphi
super page. (http://dsp.static.co.kr/index.html is the mirror that I use) It talks to Excel via DDE. It isnt perfect, but its a good
start.
0
 

Author Comment

by:straker
ID: 1334873
I started talking about OLE and ToleObject such in word.basic example.
That is ... I need an example that shows me how to use the feature of the ole to open a choose .xls to find a choosen sheet, to launch a macro and to read and to get values back and forth a range of cells...but via OLE such all the examples that everybody could find in litterature and concerning ... createOleObject('word.basic')  ........ ('Excel.Application').

Regards
0
 
LVL 3

Expert Comment

by:mheacock
ID: 1334874
I don't thin this is a 50 pt question.  You are looking for
quite a lot of advanced OLE here.
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:straker
ID: 1334875
I believe it's not so advanced.
The Word example is very simple. (If I try to register the Macro in Word a can move it quite step by step in the Delphi program and it can be found in every serious Delphi Book) [ Teixeira docet].
In Excel this translation seems not to work. I asked only the four instructions to pilot the reach of a choosen WorkBook, a choosen WorkSheet, to exec a Macro in the WorkSheet and to read and write some Cells. It seems to me not an HARD OLE question.
I Can Add 50 points but it seems a waste of resource.

Regards
0
 
LVL 3

Expert Comment

by:sperling
ID: 1334876
English is my second language, and I 'm not sure I understand you...


You need e.g. a short procedure, which tells you what OLE objects you should create, and what methods you should call, to

1) Open a given XLS
2) Execute a predefined macro
3) Write to cells
4) Read from cells.

You know how to create the objects, you just need object names and methods.

Right??

Erik.
0
 

Author Comment

by:straker
ID: 1334877
'cause English is not my second language I'll try to explane my problem in short...
I've just executed the Excel.exe and performed  the createOleObject('Excel.Application'). Now I'd like obtain  ( via OLE ) the following operation:
1- Given a workbook name, to open it.
2- Given a worksheet name, to select it.
3- Given a Row and a Column, to write to it.
4- Given a macro name in the current worksheet, to execute it.
5- Given a Row and a Column, to read from it.

That's all.

Regards.



0
 
LVL 3

Expert Comment

by:sperling
ID: 1334878
This is a 50p question... Just a matter of looking up the right Excel functions... I've got some code doing approximately this, I'll try to locate it and then give an answer...

Erik.
0
 
LVL 3

Accepted Solution

by:
sperling earned 50 total points
ID: 1334879
Excel := CreateOLEObject('Excel.Application');

Excel.Workbooks.Open('C:\WS1.XLS');
Excel.ActiveWorkbook.Worksheets('WorkSheet1').Activate;
s := Excel.ActiveWorksheet.Cells(ARow, ACol);
Excel.ActiveWorksheet.Cells(ARow, ACol) := s;
Excel.Run('MACRO.XLM!MacroName', 1, 2);

As I ain't got the US version of Excel, the actual method names might not be accurate. According to the docs (which ofcourse documents the US version, not the localized version, sigh...) this ought to work. If not, leave me a comment, and I'll check it out.

Erik.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
Hello everybody This Article will show you how to validate number with TEdit control, What's the TEdit control? TEdit is a standard Windows edit control on a form, it allows to user to write, read and copy/paste single line of text. Usua…
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question