PDA

Vollständige Version anzeigen : ColumnCount() und VBA


JBond
27.03.2006, 15:01
Hi,

habe grad mal (wieder) ne merkwürdige Entdeckung gemacht, und wollte mal nachfragen, ob das normal ist.

Habe ein mehrspaltiges Kombofeld.

In der Datenherkunft habe ich 4 Spalten - ID, Name, Beschreibung, Wert
Angezeigt werden sollen Name und Beschreibung.
Arbeiten will ich mit ID und Wert


Soweit kein Problem:
Anzahl Spalten auf 3 gesetzt, Spaltenbreiten auf: 0; 2; 4
Zugriff auf den Wert im VBA per: Me.cboMeins.Column(3)


Nun wobrauchte ich aber noch einen zweiten Wert - also in der Datenherkunft schnell ne Spalte dazu - und dann versucht über Me.cboMeins.Column(4) drauf zuzugreifen -> Ergebnis: NULL

also mal getestet und Spaltenanzahl auf 4 gestellt (Spaltenbreiten auf: 0; 2; 4; 0)
- und es ging - nur warum???
Die ColumnCount - Eigenschaft ist doch eigentlich nur für die Anzeige gedacht.

Und vor allem verstehe ich dann nicht - warum er mir dann nicht schon bei der 4. Spalte den Fehler brachte, sondern erst bei der 5. (bei Spaltenanzahl 3) - sprich ich kann eine Spalte mehr auslesen, als das ColumnCount-Attribut aussagt.

Ist dieses Verhalten normal?

Gruß,
JBond

Locutus
27.03.2006, 16:39
Hallo JBond,
ich kann das Verhalten bestätigen. Habe mich auch schon darüber geärgert, weil man ziemlich aufpassen muß, was in in der Spaltenzahl eingetragen ist, wenn man mit Columns arbeiten möchte. Ich habe bisher keinen anderen Weg gefunden, als die Spaltenzahl korrekt anzugeben und die hinteren Spalten alle auf die Breite 0 zu setzen, damit alles funktioniert.
Gruß
Jörn

JBond
27.03.2006, 16:57
als die Spaltenzahl korrekt anzugeben
na ja - korrekt eingeben muss man sie ja gar nicht - denn eine Toleranz von einer Spalte ist ja da (also bei Anzahl Spalten 4 kannst du noch auf die 5. Spalte zugreifen).

gleich mal zu Hause schauen, ob das bei 2003 noch genauso ist...

Aber danke für die Bestätigung.

Gruß, JBond