PDA

Vollständige Version anzeigen : Spaltenbezeichner per VBA/SQL umbenennen


smarties
24.09.2001, 10:43
Ich möchte die Spaltenbezeichner (Spaltenköpfe) einer Tabelle in AC97/AC00 per SQL / VBA Code umbenennen.

Im Moment arbeite ich mit der Sendkeys Methode, die macht das zwar, aber das ist natürlich sehr unschön.

Ich hab schon ALTER TABLE probiert, aber da gibt es auf diesem weg wohl keine Möglichkeit.


Danke für die Hilfe.

-S

Anne Berg
24.09.2001, 11:24
Du kannst das über VBA lösen, indem Du die Eigenschaft (Property) 'Caption' der Tabellenfelder setzt/änderst.

Die Eigenschaft ist standardmäßig nicht gesetzt, kann aber auch im Entwurfsmodus ('Beschriftung') eingetragen werden.

Das erst mal als Anregung.

smarties
24.09.2001, 12:44
Super, danke so gehts

smarties
24.09.2001, 13:40
ich glaub ich brauch doch nochmal hilfe,

wie kann ich denn auf die die eigenschaften einer tabellenspalte zugreifen?
muss ich erst mit dao eine verbindung herstellen? wenn ja, wie geht denn das?

ich hab das gefühl, das property ändern geht nur bei steuerelementen.

-S

WalterS
24.09.2001, 17:19
Hallo!
AFAIK geht das nicht, aber........

man Kann eine neues Feld einfügen, die Daten in dieses Feld kopieren und das alte Feld löschen.

Anne Berg
25.09.2001, 08:17
Beispiel:

Function testTableProps()
Call setTableProps("anrufe", "Anmerkungen", "Kommentar")
End Function

Function setTableProps(strTabName, strFieldName, strCaption)
On Error GoTo err_setTableProps
Dim db As Database, tdf As TableDef, fld As Field, prp As Property
Set db = CurrentDb
Set tdf = db.TableDefs(strTabName)
Set fld = tdf.Fields(strFieldName)
fld.Properties("Caption") = strCaption
Debug.Print fld.Properties("Caption")
exit_setTableProps:
db.Close
Exit Function
err_setTableProps:
If err = 3270 Then
' Eigenschaft erstellen, Typ festlegen, Anfangswert einstellen.
Set prp = fld.CreateProperty("Caption", dbText, strCaption)
' Eigenschaft-Objekt an die Auflistung "Properties" anfügen.
fld.Properties.Append prp
fld.Properties.Refresh
Resume Next
Else
MsgBox err.Number & " : " & err.Description
Resume exit_setTableProps
End If
End Function