Ja, stimmt ich habe das gestern unter Access 2000 probiert und das geht so nicht unter Acc97 
Am besten ein neues Feld an die Tabelle anfügen und die Werte des alten mit Typkonversion übertragen, ev. danach das alte Löschen.
jetzt schauts ein bisschen länger aus:
Sub NeuesFeld()
Dim dbs As Database, tdf As TableDef, fld As Field
Dim rs As Recordset
' Verweis auf aktuelle Datenbank holen.
Set dbs = CurrentDb
Set tdf = dbs.TableDefs!Testtable
' Neues Feld in Tabelle "Personal" erstellen.
Set fld = tdf.CreateField("FeldText", dbText, 11)
' Feld hinzufügen und Auflistung aktualisieren.
tdf.Fields.Append fld
tdf.Fields.Refresh
' Werte eintragen und Typ umwandeln
' ev. Fehlerhandling!!!
Set rs = dbs.OpenRecordset("SELECT \* FROM Testtable", dbOpenDynaset)
While Not rs.EOF
rs.Edit
rs!feldtext = CStr(rs!Feld)
rs.Update
rs.MoveNext
Wend
rs.Close
' Altes Feld löschen und neues auf Altes umbenennen
tdf.Fields.Delete "Feld"
tdf.Fields.Refresh
tdf.Fields("Feldtext").Name = "Feld"
Set dbs = Nothing
End Sub
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]