DADiSP and Excel
DADiSP, the graphic spreadsheet for scientific data analysis, now works with Microsoft Excel to offer seamless integration and data exchange, affording scientists and engineers the capability to transfer collected data from their Excel spreadsheets into DADiSP to take advantage of its powerful and superior analysis and graphic features.
From DADiSP, you can: | From Excel, you can: |
---|---|
Initialise Excel. | Retrieve analysed results from DADiSP. |
Retrieve data from Excel. | Send data to DADiSP. |
Send data to Excel. | Activate DADiSP commands. |
Transfer data automatically as cell update. | |
Execute commands. |
Using DADiSP and DDE
Dynamic Data Exchange (DDE) is a method of exchanging data between multiple applications. One application sends data to a memory location that other applications access. A DDE application can function as a “client” that requests data or a “server” that provides data. DADiSP operates as both a DDE client and server. Advanced DDE applications can be constructed using DADiSP’s built-in DDE functions.
Function | DDE Action |
DDEINITIATE | Start a DDE Conversation, returns a channel number. |
DDEREQUEST | Get a data item as text from another application. |
DDEPOKE | Send a data item as text to an application. |
DDEGETDATA | Get a series from another application. |
DDEEXECUTE | Execute a command in another application. |
DDEADVISE | Automatically retrieve a series from an application whenever the data changes. |
DDEUNADVISE | Cancel a DDEADVISE operation. |
DDELINK | Automatically retrieve a series from an application whenever the data changes. The channel number is managed internally. |
DDEUNLINK | Cancel a DDEUNLINK operation. |
DDEGETLINK | Get the link name from the Clipboard. |
DDESTATUS | Get the status of the last DDE operation. |
DDETERMINATE | End a DDE conversation. |
The steps outlined below demonstrate the basic command method of exchanging data between DADiSP and Excel.
The DDEINIT function opens a channel to a specific application and topic. The topic is often a document open in the application. DDEINIT can also start the application if it is not already running. For example,
ddeinit(“Excel”, “Sheet1”, “”, “c:\excel\excel”,1)
starts Excel and establishes a DDE link. The fourth string C:\excel\excel is the executable name of the application. The last argument of 1 tells DADiSP to automatically start the application if it is not already running.
The DDEGETDATA function allows an entire data series to be retrieved. For example,
ddegetdata (chan, “R1C1:R100C1”)
retrieves all the data from row 1 column 1 to row 100 column 1 in a series and places the series in the current DADiSP Window.
After analysing the data in DADiSP, the resultant information may be returned to Excel.
DDEPOKE sends a data item from DADiSP to an application as a string. For example, to send a 100 point series to Excel;
ddepoke (chan, “R1C1:R100C1”, Gsin (100,.01,1))
creates a 100 point sine wave and sends the data to row 1 column 1 through row 100 column 1 in Excel.
Automatic data transfer – DDE advise loops
DDE also supports a powerful feature called advise loops or hot links that automatically transfer data whenever the data changes. For example, to transfer the first 100 rows of an Excel worksheet into the current Window of DADiSP :
chan = ddeinit (“Excel”, “Sheet”)
ddeadvise (chan, “R1C1:R100C1”)
Whenever data in any cell within the first 100 rows of the first column changes, the entire column of data is transferred into the DADiSP Window where the DDEADVISE function was first executed. New data is automatically appended to past advise data.
Using DADiSP as a DDE server
Although DADiSP most often functions as a DDE client application, requesting data from other applications, DADiSP also acts as a DDE server. As a server DADiSP supports the following DDE topics: Commands and Systems. With the Commands topic, applications can retrieve information on almost any valid DADiSP expression. For example, using Visual Basic from within Excel (i.e. using Excel commands):
chn = DDEInitiate (“DADiSP”, “Commands”)
var = DDERequest (chn, “10*max(w1)”)
retrieves from DADiSP the maximum of W1 multiplied by 10 and assigns it to the Visual Basic variable var.
DDE management library
DADiSP’s DDE capability is built upon the DDEML or DDE management library. This support insures that DADiSP’s DDE capability will be compatible with, and take advantage of, DDE performance enhancements in subsequent releases of MS Windows. The DDEML also enforces strict adherence to the underlying DDE message protocol.
Excel is a registered trademark of Microsoft Corporation.
The Next Steps
We are currently unable to offer this product for sale. Please contact us for more information.
We can, however, provide you with all of the software support and advice you need to choose the right product so please call your local office for advice or a quote.
Ready To Buy?
What do our Customers say about us?
Very helpful in providing advice on which courses were applicable. Very clear. Checked with trainees to ensure the pace was accurate. Very aware of individual needs of trainees without letting individual issues take over. My interaction with Adept has always been very good. Staff are helpful, efficient and responsive.
Dr C Stott, Cambridge, UKI am impressed by the level of support your company provides, and the list of software you offer looks very good indeed.
MQ, Edinburgh, UKThanks again for your help. EndNote is a great product and I am constantly telling students, colleagues and friends about it.
JS, Dundee, UKBob worked tirelessly over many hours (and days!) to try to resolve the issue. His efforts were truly appreciated on my behalf. He was polite, caring and nothing was too much trouble. Many, many thanks Bob.
JOAlfasoft Products
For the time being we are unable to offer the following product ranges although we are currently working hard to increase the number of products we can offer in the future. Please contact us to talk about alternative products that we may be able to offer you.