Pass a variable to a report ?

Martyh

Registered User.
Local time
Today, 09:59
Joined
May 2, 2000
Messages
196
I've got a problem with reports. This report requires a variable to be passed to it from a form, but I can't seem to pass a variable to the report. I have tried a global
variable but still no luck. I realize there must a way -- but what is it ??
 
You can pass a variable to a report by setting the value of an unbound text box to the variable using the report's OnOpen property. Example:

[YourReport].OnOpen
Me![YourFieldName] = YourVariable
 
It doesn't work for me :

When I try to use the code :
Me![YourFieldName] = YourVariable

I am receiving the error message : You can't
assign a value to this object.
 
if you trying to pass the variable from a form to meet a fields criteria on a report try this:


in the criteria section in design view of the report put
[Forms]![formname]![fieldname]

if the field is on a subform simply do this
[Forms]![formname]![subformname]![fieldname]


let me know if this doesnt work
 
Try This:
me.[myTextBox].caption = globalvariables.variablename
Hope this solves your problem
 
Sharda:

I found that your solution worked only if I used a LABEL instead of a TEXTBOX, since the textbox has no caption attribute. I got this sort of thing to work for me using:

me.[myLabel].caption = MyPublicVariable

or

me.[myLabel].caption = [Forms]![formname]![fieldname]

Good luck.
 
That's right actually, for a text box it's:

Me.[myTextBox].Value = YourVariable

Although the .Value part is superfluous, you can just use:

Me.[myTextBox] = YourVariable

If you're getting the error "can't assign a value to this object", then it probably indicates that the object isn't a text box.


HTH

Mike

[This message has been edited by Mike Gurman (edited 02-19-2001).]
 
I've just also re-read the thread here and realised that to use:
Me.anything from the OnOpen event of a report, the text box would need to be on the report (that's what the 'Me' means) - I don't think that will work.

I tend to use the other approach and put the variable into an unbound text box on the form from the OnClick event of a 'print report' button and then reference the form's text box from the report's record source query.

My (in)famous custom email demo uses this approach, if you'd like a copy so you can see it in practice, mail me with 'email demo' in the subject line and I'll send it by reply.

Mike


[This message has been edited by Mike Gurman (edited 02-19-2001).]
 
Has anyone solved this yet? I'm having problems galore with a report. Because I want to run the report in collumns as opposed to rows, on Report_Open I open a recordset and run through the records assigning the relevant values to the textboxes. Everything works appart from the assigning the recordset values to the preplaced textboxes. I get a run time error 2248 'You can't assign a value to this object'.

This works:
Me.Label9.Caption = rec("Duty_Date").Value

This doesn't:
Me.TestBox.Value = rec("Duty_Date").Value

Let alone this:
Me.TestBox.Value = "Hello"

I'm pulling my hair out. Please help.
 
Okay since to get a text box to fill with "Hello" you would use the on format event of the detail section I assume that's where your code should go.
Me.TestBox="Hello"
 
Brilliant. It works. Thanks a million.

J-F
 

Users who are viewing this thread

Back
Top Bottom