getting events from Excel

Hello,
How to I send events from Excel to my VB6 application?
I am unfamiliar with ActiveX . I think I see it as some sort of server
logically sitting between my app and Excel. That is to say, I think
that I would raise events in Excel VBA, the server catches them and
raises events in my vb6 app.

My need for this is that my app installs a toolbar in Excel. When the
user selects an action from the toolbar,   I need to send to my app
the action code and a string of coded information.

I would also like to have Bidirectional communication but I dont see
how that could be done.

I need a solution for version of Excel 97 and younger
I would  be grateful for any links to working examples.
tia
softie
0
softie
11/15/2009 7:32:35 AM
vb.general.discussion 1016 articles. 0 followers. Follow

2 Replies
812 Views

Similar Articles

[PageSpeed] 24

"softie" <garry@canuck.com> wrote in message 
news:9f254022-73ff-4619-a49c-787fe1e832e9@b25g2000prb.googlegroups.com...
> Hello,
> How to I send events from Excel to my VB6 application?
> I am unfamiliar with ActiveX . I think I see it as some sort of server
> logically sitting between my app and Excel. That is to say, I think
> that I would raise events in Excel VBA, the server catches them and
> raises events in my vb6 app.
>
> My need for this is that my app installs a toolbar in Excel. When the
> user selects an action from the toolbar,   I need to send to my app
> the action code and a string of coded information.
>
> I would also like to have Bidirectional communication but I dont see
> how that could be done.
>
> I need a solution for version of Excel 97 and younger
> I would  be grateful for any links to working examples.

Add a Reference to "Microsoft Excel X.X Object Library".

In Form1, add the following code:

Option Explicit

Dim WithEvents oExcel As Excel.Application

Private Sub Form_Load()
    Set oExcel = New Excel.Application 'GetObject("", Excel.Application)

    oExcel.Application.Visible = True
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Set oExcel = Nothing
End Sub


In the code window, click on the left dropdown combo, and you will see 
"oExcel". This allows you to access the events. If you need events from 
other objects, declare a variable WithEvents and use Set statement to set it 
to some object.

Normally you need to set the reference to Excel 97 type library, but if you 
can't find it, it's okay to use later libraries as long as you don't use 
features that do not exist in Excel 97.


0
Nobody
11/15/2009 8:15:44 AM
> > Hello,
> > How to I send events from Excel to my VB6 application?

<SNIP>

Thanks for your info.

I have browsed the Excel object model looking for a "event" that would/
could be raised in my vb6 app. I see no "direct" event that would help
- ie something like "CommandBarbutton_pressed" .
I see all sorts of properties in the commandbarbutton object. The
"state" property would probably be the one to check.

 Presently I do an indirect approach ( admittedly very amateurish). I
haved added a "communication worksheet" (comm ws) to the users
workbook. When ever the user selects a commandbarbutton, I change a
specific cell-value on the "com ws" which causes a "sheetchange"
event. In my app, in the "sheetchange" event handler,if the worksheet
name is "comm ws", I get the specific cell value, do the action
required, etc.

Regardless of even if a "direct" event is found, I am pretty sure that
I still need the "comm ws".I need to do large numbers of data
transfers, staged on the "comm ws", from Excel to my app through the
Clipboard. At the time that decision was made, it seemed logicly
obvious that clipboard xfers are faster than file xfers. (Maybe now
the File i/o and its caching would be just as fast as the clipboard?)

So, with all of this further explanation, is there a "direct event"
approach?



0
softie
11/15/2009 8:32:39 PM
Reply:

Similar Artilces:

Very annoying behaviour of Excel 2003
Each time I am opening Excel, it is installing some component. This takes several minutes, and becomes very annoying. I recently had to reinstall XP and Office from the distribution CDs. I have the problem since then. It certainly has something to do with the install. Does anyone on this forum ever experienced such a behaviour. I am running Office 2003 on XP SP3. have you tried doing a repair in the help menu? -- Gary Keramidas Excel 2003 "Jean" <Jean@discussions.microsoft.com> wrote in message news:020549D4-8070-46ED-8768-821EECD87C88@microsof...

My hide sheet option in excel is not working
My hide sheet option in Excel is not working. It is grayed out so I can not toggle nor use it to hide or unhide sheets. Security is at Medium - would appreciate any insight into how to fix this. Is the sheet protected? You cannot hide a protected sheet. -- Cordially, Chip Pearson Microsoft MVP - Excel Pearson Software Consulting, LLC www.cpearson.com "arleen" <arleen @discussions.microsoft.com> wrote in message news:D028B90F-6DDB-4DE6-9F5C-22C137FBE927@microsoft.com... > My hide sheet option in Excel is not working. It is grayed out > so I can not > toggle n...

How do I get excel to accept (c) as text and not change to copyri.
How do I enter the text (c) in Excel without having it changed into the copyright symbol? Hi Daffyd, Try: Tools | Autocorrect | Select (c) | Delete | OK --- Regards, Norman "daffyd" <daffyd@discussions.microsoft.com> wrote in message news:8CCC3C1A-6F19-4F62-B934-8A71F236A4FD@microsoft.com... > How do I enter the text (c) in Excel without having it changed into the > copyright symbol? Go into the Tools Menu. Look for AutoCorrect. In the bottom half of the AutoCorrect Tab, look at the list for Replace text as you type. Delete the entry for (c). tj "da...

Setting series values on Excel Chart
Hi I'm struggling very hard in getting beyond this error when trying to use VB to generate a chart from data previously inserted into the sheet. Unable to set the Values property of the Series class. The code works absolutely fine in XL2007 but I am having to port it back to 2003 and the inference is that its empty values that cause it to hiccup - something I cannot avoid. My code is: 1. Retrieve selected data from database and place it at the top of the sheet 2. Add The Chart 3. Iterate through the data (amount can be variable depending upon user inputs) For j as i...

Excel template that lists each month's meetings w/ some detail
I'm looking for an Excel template that lists every month of the year with room to list weekly, monthly and quarterly meetings, including some detail for each meeting. Probably would need to be landscape oriented. The main intent is to give the person using it an idea of upcoming meetings, the intent of each and what prep is required. ...

How do I make a 'box and whisker plot' graph in Microsoft Excel?
I am in Year 12 and am doing a stats assignment. The project states that i MUST insert a box and whisker plot for some data, but i don't know how to do this. Does anybody know? Hi, Here are some sites on the topic of stats charting not just box and whisker. http://peltiertech.com/Excel/Charts/statscharts.html http://www.processtrends.com/toc_statistical_charts.htm http://tushar-mehta.com/publish_train/data_analysis/16.htm http://people.stfx.ca/bliengme/ExcelTips.htm Cheers Andy -- Andy Pope, Microsoft MVP - Excel http://www.andypope.info "Year 12 student who needs help" &...

I've got a formula for stones and pounds
Hello, I've got a column that displays a series of weights in stones & pounds (both in the one cell). How do I get a chart to recognise and display in the same format? Regards, mikelenno What is the format of the cells with stone & pounds It is best to enter such values a 10 3/14 and format the cells with # ??/14 best wishes from one who is INT(275,14) stone & MOD(250,14) lbs -- Bernard V Liengme www.stfx.ca/people/bliengme remove caps from email "mikelenno" <mikelenno@discussions.microsoft.com> wrote in message news:5AD608FA-5367-4CED-AD76-1F54228EFDBA...

How to get ride off this warning ?
Hi: I have a string resource defined. I need to pass this string ID to another function like this: void foo (UINT string_id) { CString str ((LPCTSTR)string_id); } During comiling, got error at casting ((LPCTSTR)string_id. But it works fine. Just wonder, how to get ride off this warning? Thanks In Advance! Polaris use reinterpret_cast<LPCTSTR>(string_id) > Hi: > > I have a string resource defined. I need to pass this string ID to another > function like this: > > void foo (UINT string_id) > { > CString str ((LPCTSTR)string_id); > } > ...

How to get free traffic to your website
The facts you should know about making money online! Hi , my name is Ben Durandt. -Discover how to get 1 Million visitors without paying a dime in advertising! -Discover how a young 31 years old man just became a millionaire on the Internet... in weeks! He paid cash for a Porsche 911 Carrera convertible and a giant domain with private lake in only 28 days. More than 20,000 people have been raging on his website every day! ... Because he just revealed HOW to do it! Heck, go there TODAY and See what he has to say! Click here : http://www.freeadguru.com/cgi-bin/i.pl?c=a&i=34180 -...

Getting an Error when there is nothing to show
-- The bottom of my report which is a statement shows #Error when there is no Invoices to add up. Can I have it blank instead. this my text Box Control Source thanks for any Help....Bob =Reports!rptOwnerPaymentMethod!subChildOwnerInvoiceAmount!tbAmount.Value Try: =IIf([subChildOwnerInvoiceAmount].[HasData], [subChildOwnerInvoiceAmount].[tbAmount]) Explanation in: Bring the total from a subreport onto a main report at: http://allenbrowne.com/casu-18.html -- Allen Browne - Microsoft MVP. Perth, Western Australia Tips for Access users - http://allenbrowne.com/tips.h...

Outlook 2003 Cant get to newsgroups
I dragged the NEWS icon from tools/customize/commands/go to the GO button on the tool bar. It worked fine then I got on a newsgroup and a posting that read "payback" multiple times. I didnot open the attachment. Next time I tryied to go to NEWS it was not there. How can I get newsgroup access back? Tryied reinstalling Outlook2003 and Office 2003 with no luck. Expect the answer to be in registry. Help please. I got the similar problem and got the fix. Here is what you need to do: - add the NEWS button under Go menu - accept Outlook Express is your default NEWS client - c...

How do I fix this so I don't get an "Error 2015"
Dim x x = Application.CountIf("E5,E6000", "T13065") How do I fix this so I don't get an "Error 2015" Thanks, Rick Not tried it but I would think x=Application.Countif(Range("E5:E6000"),"T13065") Providing T13065 is a string you are counting. If it's a range reference x=Application.Countif(Range("E5:E6000"),Range("T13065")) -- HTH Nick Hodge Microsoft MVP - Excel Southampton, England nick_hodgeTAKETHISOUT@zen.co.ukANDTHIS www.nickhodge.co.uk "2D Rick" <rbrowniii@compuserve.com> wrote in m...

I get COMException while exporting chart on IIS 6.0.
I have this code that works perfectly on my development machine when I deployed it at customer site it gets exception. Here is the error and my code: thanks error ========== Exception from HRESULT: 0x800A03EC. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Runtime.InteropServices.COMException: Exception from HRESULT: 0x800A03EC. Source Error: An unhandled exception was generated during the execution of the c...

why do changes only save locally on networked excel file?
why do changes only save locally on networked excel file? ...

Article published by Microsoft reg. 'Event' custom entity
Recently, I found a great article published by Microsoft that contains a sample code on how to create a custom entity, event. I thought that I bookmarked it but cannot find it. Has anyone seen it and can provide a hyperlink? I will really appreciate it. http://msdn2.microsoft.com/en-us/library/aa682866.aspx you'll probably find it in the above link "mkatsev" wrote: > Recently, I found a great article published by Microsoft that contains a > sample code on how to create a custom entity, event. I thought that I > bookmarked it but cannot find it. Has anyone seen...

Excel problem #3
I am attaching an excel file where i have a problem In the file are 2 sheets, Main & second I want to get data from second sheet to the main sheet by a formula by which the amount in the total column will be posted in the second sheet falling under various dates. I have done for 6 sept 2003 by way of example I do not know any formula by which i can do this automatically Please help me Attachment filename: example.xls Download attachment: http://www.excelforum.com/attachment.php?postid=444742 --- Message posted from http://www.ExcelForum.com/ Hi one way: ...

Excel formulation to automate values
Hi there, I have a little problem on arranging a small multi-worksheet excel here. Let me explain in a short way then give some details on it. I am trying to make an offers recordsheet which has two worksheets in it. One for products(and their base prices) and an offer sheet. I would like to use a bit dynamic data here. So when I type the name of the product excel would give me the price from other worksheet. in details; Prices worksheet is something like: A B 1 Product BasePrice 2 mouse 5 3 keyboard 8 4 ... And the ...

Removing hidden mailto:s from Excel?
I received a spreadsheet attachment yesterday and found a mailto:(my address) embedded in a cell under a text string. It was evident in a tooltip that appeared when cell was hovered-over. I told the sender who now says that many of her spreadsheets - used to handle group memberships - have such hidden addresses. What terms would she use to search for these pests, either in My Docs or on opening each sheet? ...

Using Excel in Mac office 2004 with Microsoft/Mac 2008:Analysis toolpack
Although I am disappointed with Office 2008 for Mac because of the absent of Analysis toolpack, I figured things out quite recently that I can still install my Mac office 2004 and use the excel package that contains the Analysis tool pack. How? ...... let me show you: 1. Insert your CD for Mac office 2004 2. When it open on your desk top, two options will be given to you to download the software (a) Office set-up assistant, and (b) Microsoft office 2004. 3. CHOOSE MICROSOFT OFFICE 2004 (Drag the icon onto your desk top) and it will start to run/download. 4. When done, this will appear as ...

Printing Word and excel documents via excel vba
I have a document that has some Excel and some word content i would like to use excel vba to print both a page from word and then a page from excel. I know how to select and open the word document, however i cant find any code to print page X from word. basically i need to: print page 1 of c:\xx\document1.doc print page1 of sheet1 of c:\yy\excelwkbk1.xls print page 2 of c:\xx\document1.doc print page2 of sheet1 of c:\yy\excelwkbk1.xls and so on it will require moving between word and excel - the excel bit i get, but getting back to excel from word, and printing out in word is slightly more...

Using Excel spreadsheet as input to Access
Hello, I posted this in the New Users forum but only got one answer, so thought I'd try here as well. Like so many others, I am an Excel newbie. I was a mainframe COBO programmer in another life, but that was a few years back My manager would like me to write an app that will take tracking dat from an existing Excel spreadsheet (generated by our system) but onl use a select handful of columns as input to a new Access database tha I will create. I'm guessing that I can either a) create a new edited spreadsheet to b used as input to the Access database or b) use the Import wiza...

force excel to run in only one process excel.exe
force excel to run in only one process excel.exe, excel seems to want to make multiple excel.exe loaded into memory which causes mysheet.copy to fail so i have to close out the xls, kill all running excel.exe, then run the xls again and the macro works. i only have to do this when i am actively debugging a lot. if i just run my macro w/o opening the vba debugger, i can run it as much as i want, but if i run with break points it crashes a lot because of multiple excel.exe loaded into memory. perhaps there is a way i can force excel to only load one excel.exe? Daniel, Are you using Automatio...

Excel not displaying German characters correctly.
This is a real puzzler. Has our entire office and IT department stumped. We have two machines (M1 / M2) which are equal spec/ operating system, applications, versions, etc... The only difference that we can see between the two machines is that one (M1) has Internet Explorer encoding set to "UTF-8" with "Automatic" selected. The other (M2) has "Western European ISO" with no automatic selected. Now, when the machines log into a web application and choose to download a German Excel file, M1 and M2 get the file correctly if they have their encoding settings...

MS Excel Paste Special>Paste All
Using MS Excel 2003 Paste Special> Paste All, doesnt quite paste the 'Column Widths'. Am I always required to do the two step dance, Paste Special> Column Widths and Paste Special>All. >>Am I always required to do the two step dance Yes<g>. -- Jim "Excel User" <Excel User@discussions.microsoft.com> wrote in message news:5D34ED9D-5BD6-43AD-8773-1EB7229309B2@microsoft.com... | Using MS Excel 2003 | | Paste Special> Paste All, doesnt quite paste the 'Column Widths'. Am I | always required to do the two step dance, Paste Special> ...

How to get a macro to do what i want?
I have designed a form in Excel and the data that is inputted i want to be able to save in a separate worksheet. The problem i am having is that eveytime i record the macro, it over writes the same row each time (if that makes sense). For example if i copied every cell in the form and paste them into the database Row 1, i then want the new piece of information inputted into the form to go into Row 2 and then Row 3 etc.... But it keeps going into Row 1, it wouldnt move down the rows. Hopefully this makes sense to someone and someone can give me some advise. Calculate the last row ...