Combobox has value, .boundcolumn = 1, .column(0) IS NULL!!, comboboxhas recordset with value

E

eisaacs

I'm an experienced Access/VBA developer, but I've never seen this odd
behavior before. I've got an odd issue happening with one of my
comboboxes on a subform. When the form loads up, it works fine, but
on a requery the column(0) - column(x) values of the combo box become
NULL in code and the value doesn't display on the form, but the combo
box still has the original value AND the original value is in the
recordset of the combobox when you drop it down.

In the immediate window with another cbo I type:
?forms!frmSpecimen!subPanel.form.cboCompanyKey_Client.boundcolumn
1
?forms!frmSpecimen!subPanel.form.cboCompanyKey_Client
79
?forms!frmSpecimen!subPanel.form.cboCompanyKey_Client.column(0)
79

....79 is expected for column(0) and it works, but for this other
troubled cbo box all is not well...

?forms!frmSpecimen!subPanel.form.cboclientprogramkey.boundcolumn
1
?forms!frmSpecimen!subPanel.form.cboclientprogramkey
2
?forms!frmSpecimen!subPanel.form.cboclientprogramkey.column(0)
Null
?forms!frmSpecimen!subPanel.form.cboclientprogramkey.column(1)
Null

....all the column(X) values are NULL in code, but the cbo has a value.

Now the obvious thing would be if the recordset for rows after it was
requeried didn't didn't contain the value 2 for clientprogramkey, but
this is not the case. If I dropdown the list, that option is in the
available list within the rowset for the cbobox. If I select the
option, that record is then FIXED and both the cbo and column(0) show
value 2 from that point on, within the form and in code. If I close
the form and come back to that record, it works fine thereafter.
Other records are still messed up though and I'm not sure what is
triggering the issue.

This is how the cbo is being requeried, and the SQL is valid SQL that
results in the row in question and all the other applicable options
for that record at that time based on the other client cbo box's
value...
Me.cboClientProgramKey.RowSource = strSQL
Me.cboClientProgramKey.Requery

I've decompiled, compacted, and recompiled as well, but that hasn't
resolved the issue. Has anyone ever seen similar issues or a related
MS bug?

Thanks!
 
J

Jeanette Cunningham

Hi,
this could be the A2003 SP3 bug.

Here are my notes on this

"Combo box controls and list box controls display no value or
incorrect values in Access 2003 after you install Office 2003 Service
Pack 3." And a few more problems SP3 introduced.

Description of the Access 2003 post-Service Pack 3 hotfix package:
December 18, 2007 - 945674

http://support.microsoft.com/kb/945674
If the field to which the combo box is bound has a Format property setting
for the field in the table, then yes, this is a bug that has been reported
by many ACCESS users during past weeks. It apparently is a bug in Office
2003 SP3, which was released by MS a short time ago. MS is aware of the
bug and is working on how to fix it.

In the meantime, the "complete workaround" is to remove the Format
property's value from the field's properties in the table's design view



Jeanette Cunningham
 
E

eisaacs

Fixed. It was the obvious scenario. The data in the db had been
updated to invalid values for the given client values, so the
clientprograms that were being displayed were not appropriate. The
name was the same in the result set that was displaying, but the
clientprogramkey was different. Doooh!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top