2009-04-06 6 views
0

-Code in der Formular onLoad:VB in Access: Combo Box Werte sind nicht in der Formularansicht sichtbar sind aber sichtbar durch Debug.Print

country_combo.RowSourceType = "Value List" 

-Code in einer Reset-Funktion:

Dim lListIndex As Long 

    With Me.country_combo 
    For lListIndex = .ListCount - 1 To 0 Step -1 
     .RemoveItem (lListIndex) 
    Next lListIndex<br/> 
    End With 

Code Land Combo bevölkern:

*For n = 1 To numCountries* 
    *countryCombo.AddItem (countryRS.Fields("countryName"))* 
    *countryRS.MoveNext* 
    *Next n* 

ich habe ein Problem mit, dass der Code auftritt, nachdem das Land Combobox Läufe zu füllen. Die Werte sind da, da ich Debug.Print (countryCombo.Value) ausführen kann und es den Namen des ausgewählten Landes ausgibt, aber ich kann die Werte in der Combobox überhaupt nicht sehen. Sie sind unsichtbar, und soweit ich weiß, gibt es für bestimmte Gegenstände keine Sichtbarkeitseigenschaft, es sei denn, ich täusche mich völlig.

comboBoxError.png http://img110.imageshack.us/my.php?image=comboboxerror.png

+0

Wenn Sie das Kombinationsfeld aus einer Tabelle (über ein Re-Cord-Set) auffüllen, warum Rowsource nicht einfach festlegen, um eine entsprechende SQL-Zeichenfolge zu verwenden? Kurz gesagt, es sieht für mich so aus, als ob Sie etwas in Code tun, was mit Point-and-Click gemacht werden kann. –

Antwort

0

Ich glaube, Sie wahrscheinlich Zugang GUI-Tools zu tun, was Sie suchen verwenden sollten. Klicken Sie im Entwurfsmodus auf das Feld, das Sie zu füllen versuchen, und klicken Sie dann auf die Registerkarte "Nachschlagen". Sie können dann eine Tabelle angeben, mit der das Feld gefüllt werden soll, und Ihre Formulare sollten automatisch aktualisiert werden.

0

Ich habe auch gesehen, was Sie hier beschreiben - soweit ich das beurteilen kann, ist es ein Fehler in Access (ich benutzte 2007), der nur auftritt, wenn Sie den Inhalt eines Kombinationsfelds programmatisch durcheinander bringen. Es passiert nicht jedes Mal. Das Problem wird korrigiert, wenn Sie den Text im Kombinationsfeld markieren.

0

Ich habe ein ähnliches Problem mit Access 2003. Basierend auf der Auswahl eines Kombinationsfelds wird die Zeilenquelle einer Listbox auf eine SQL-Zeichenfolge eingestellt Grundsätzlich ein SELECT DISTINCT [MyField_Selected] FROM MyTable. Für einige Felder sind die Werte in der Listbox sichtbar und andere nicht. Die Werte sind da aber da ich über Code darauf zugreifen kann. Um es interessanter zu machen, funktioniert es gut in Access 2007. Nur die Auflösung in einem anderen Forum gefunden. Überprüfen Sie die Formateigenschaft der betreffenden Felder in der Tabelle. In meinem Fall, als Access 2007 die Tabelle erstellt hat, wurde dort ein @ Format eingefügt. Ich habe das entfernt und alles funktioniert super!

Verwandte Themen