Ask Me Help Desk

Ask Me Help Desk (https://www.askmehelpdesk.com/forum.php)
-   Access (https://www.askmehelpdesk.com/forumdisplay.php?f=441)
-   -   Automation object, not contained? (https://www.askmehelpdesk.com/showthread.php?t=635458)

  • Feb 12, 2012, 01:48 PM
    wilpeter
    Automation object, not contained?
    Version 2002 of Access. I have a Menu form (not connected to a table). It mostly contains macro buttons, but one field should reflect the last assigned autonumber in a receipt table (called tblTaxReceiptNumbers, fieldname TaxReceiptNo) I have a query called qryLastReceiptNo that displays one field TaxReceiptNo sorted Descending with Top Values =1 that wonderfully gives me the number; however I can't display it in my menu field. I get the dialog/error "The object doesn't...etc." I've tried the SetValue in a macro with the two properties identified... same result. Everything else seems to work. Pressing Ctrl G and looking in References shows VB for Apps; Access 10.0 object library; OLE Automation; and MS ActiveX Data Objects 2.1 Library. Anything else I should be checking?
  • Feb 15, 2012, 07:52 PM
    ScottGem
    Use a DLookup to pull the value from your query or a DMax to pull the value from the table. Use the expression as the ControlSource of the text control.
  • Feb 21, 2012, 11:40 AM
    wilpeter
    Thanks for your response. I've tried both these expressions in the Control Source property of the table's field Lastest:
    DMax([TblReceiptNumbers]![TaxReceiptNo])
    DLookup([qryLastReceiptNo]![TaxReceiptNo])
    and each provides the same result, which is #Name?
    Am I correctly interpreting your suggesion?
  • Feb 21, 2012, 02:40 PM
    ScottGem
    Yes, but not implementing it properly. First a table doesn't have controlsources, so you must be referring to a form.

    You needed to lookup the correct syntax for a DMAX. Thje syntax is:

    DMax("[fieldname]","tablename")

    So if TaxReceiptNo is your field and TblReceiptNumbers your table then use:

    =DMax("[TaxReceiptNo]","TblReceiptNumbers")

    as the controlsource. Or use:

    =DLookup("[TaxReceiptNo]","qryLastReceiptNo")

  • All times are GMT -7. The time now is 07:15 AM.