View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
KR KR is offline
external usenet poster
 
Posts: 121
Default Checking & installing references as part of on_open

Bob- this example was very helpful to get me started.

When using late binding, I'm having trouble converting the namespaces (if
that means what I think it means); While this is partly re-using the code
from intellisense (with early binding/ references on), I'm not sure how to
identify by myself what should go in the quotes after each statement. Any
advice would be greatly appreciated.

'for late binding:
Dim olApp As Object
Dim olNs As Object
Dim olFldr As Object
Dim olApt As Object

Set olApp = CreateObject("Outlook.Application")
Set olNs = olApp.GetNamespace("MAPI")
Set olFldr = olNs.MAPIFolder '<---- it stops here, error 438 unsupported
property or method
Set olApt = olFldr.AppointmentItem

My goal is to be able to cycle through all appointments and identify the
ones with "Vacation" in the subject line (using olApt.Subject), then I grab
the olApt.Start and olApt.Duration. I'm not sure if I can access these last
three on the fly, or if I need to Dim them as objects as well?

Many thanks,
Keith


"Bob Phillips" wrote in message
...
I have given a worked example before, you can see it at
http://tinyurl.com/2qern
--

HTH

RP
(remove nothere from the email address if mailing direct)


"KR" wrote in message
...
I have tried late binding, but then I have all sorts of other problems
getting the rest of my outlook code to work (I'm not a programmer by
training or profession, I'm just learning as I go). Is there a web page
reference anywhere that shows how to take early binding code, and what

needs
to be done to it, in order to make it work when late binding is used? I

have
a basic notion of the difference between early and late binding, just

not
the details of how to make it work.

Thanks,
Keith

"Bob Phillips" wrote in message
...
Use late binding.

Dim oOLApp as Object

with

Set oConn = CreateObject("Outlook.Application")

--

HTH

RP
(remove nothere from the email address if mailing direct)


"KR" wrote in message
...
I have a macro that access MS Outlook data from Excel (mixed

platform,
users
may be using Win2K or WinXP and O2K or OXP)

Is there a way, during the on_open procedure, to have the VBA code

check
for
a reference to outlook, and if there isn't one "check the box" to

activate
the reference? What makes this more problematic is the multiple

platforms,
so I'm not sure how to hardcode the multiple possible reference

names.
I
am
sticking with early binding, because so far I haven't learned enough

to
make
late binding work (I've tried).

The idea of walking every user through the process of opening up the

VBE,
adding the reference, etc. is daunting, so I'd like to do this
automatically
if possible.

Many thanks,
Keith

--
The enclosed questions or comments are entirely mine and don't

represent
the
thoughts, views, or policy of my employer. Any errors or omissions

are
my
own.