Solved

vbscript in outlook - custom form

Posted on 2006-11-07
8
600 Views
Last Modified: 2012-06-22
Hey there,

I'm making a custom form in outlook (based on the message form)

In my form, I have two label objects: uname , and hname
I would like these two labels to become the username, and hostname of the

Here is what I have so far, but gives me errors on line 2 and im not sure why:

Function Item_Open()
Dim HDUsername as string
Dim HDHostname as string
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set HDHostname = WshNetwork.ComputerName
Set HDUsername = WshNetwork.UserName
uname.caption = HDUsername
hname.caption = HDHostname
End Function


Anyone know whats wrong?
0
Comment
Question by:jcourtes
  • 5
  • 3
8 Comments
 
LVL 35

Accepted Solution

by:
mvidas earned 125 total points
ID: 17892517
jcourtes,

If you're using vbscript, remove "as string" after the two variables are dim'med.  Also, you'll need to remove the "Set " keyword before setting those two string variables, as Set is used when setting an object reference.

Matt
0
 
LVL 1

Author Comment

by:jcourtes
ID: 17892595
It's telling me "object required" for this line now:

Set WshNetwork = WScript.CreateObject("WScript.Network")

0
 
LVL 35

Expert Comment

by:mvidas
ID: 17892666
Are you really running this from vbscript, or from outlook vba?

If vbscript, then I'm not sure what the error could be.  If it is vba, then change it to
 set wshnetwork = createobject("wscript.network")
Even if you are using vbscript, you can remove the qualifying wscript. before createobject

If it is really vba, then you can add the "as string" back to it, making your function:

Function Item_Open()
 Dim HDUsername as string
 Dim HDHostname as string
 Dim WshNetwork as object
 Set WshNetwork = CreateObject("WScript.Network")
 HDHostname = WshNetwork.ComputerName
 HDUsername = WshNetwork.UserName
 Set WshNetwork = Nothing
 uname.caption = HDUsername
 hname.caption = HDHostname
End Function

Matt
0
 
LVL 1

Author Comment

by:jcourtes
ID: 17892742
I'm using vbscript in my outlook form. does that mean vba?

When it gets to :

uname.caption = HDUsername

It's telling me "object required"
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 35

Expert Comment

by:mvidas
ID: 17892879
vbscript is a derivitive of VB (as is VBA), though generally used only through .vbs files or .asp pages (an outlook form would usually use VBA, or VB if the form was part of a COM addin).  Anyways..

If you're getting 'object required' for that line (and would for the following line too), are your labels truly called "uname" and "hname"?

If so, is your function located in the form's code module? Or is it part of a separate module? If separate, you'll have to refer to the name of the form as well, like
 UserForm1.uname.Caption = HDUsername
0
 
LVL 1

Author Comment

by:jcourtes
ID: 17894071
one thing i've noticed:

I'm putting all the script:
Function Item_Open()
Dim HDUsername
Dim HDHostname
Dim WshNetwork
Dim Testvalue
Set WshNetwork = CreateObject("WScript.Network")
HDHostname = WshNetwork.ComputerName
HDUsername = WshNetwork.UserName
Set WshNetwork = Nothing
MsgBox HDUsername
MsgBox HDHostname 'works up till here.
Testvalue = lbUsername.caption 'this is where the error comes up
MsgBox HDUsername
hd.lbUsername.Caption = HDUsername
hd.lbHostname.Caption = HDHostname
End Function

i've tried adding the parent ? (hd.lbHostname.....)
I don't think i named things correctly. I may have started the form off wrong, but either way, i started with a message form as a base and heavily modified it.

I've created a bunch of labels  (lbHostname, lbUsername, lbIPAddress)  on the form.

When the form loads, I want the labels to grab their respective values.
Also, will the values get sent along with the form so that they can be read from similar labels on the read side?
If not, what must I keep in mind?
0
 
LVL 1

Author Comment

by:jcourtes
ID: 17894099
the error:

Object required: 'lbUsername'
Line 12...

Testvalue = lbUsername.caption 'this is where the error comes up

so far I get the poppups with the correct values so I know up until there is working fine..

Just can't seem to find out how to point to the labels i created.

I've even tried:
IPM.Note.SupportRequest.lbUsername.Caption

That still doesnt work...
The code up here is also going into the script editor ('view code' from form edit screen)
Should it be going into the visual basic editor - module 1 ?
I'm starting to confuse myself....
0
 
LVL 1

Author Comment

by:jcourtes
ID: 17894132
should i create custom fields?
0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
If you have ever used Microsoft Word then you know that it has a good spell checker and it may have occurred to you that the ability to check spelling might be a nice piece of functionality to add to certain applications of yours. Well the code that…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

744 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now