Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: silentwolf am Juni 30, 2016, 11:20:12

Titel: Feldname in Tabelle ändern per VBA
Beitrag von: silentwolf am Juni 30, 2016, 11:20:12
Hallo,

ich würde gerne einen VBA code erstellen der mir alle Feldnamen einer Tabelle aktualisiert.
Folgenden Ansatz habe ich schon aber leider weis ich nicht weiter..


Sub Feldnamen()
Dim rs As DAO.Recordset, i As Integer
Dim intPos As Integer

    Set rs = CurrentDb.OpenRecordset("tblObjekteTest")
    intPos = InStr(rs.Fields(i).Name, "_")
    For i = 0 To rs.Fields.Count - 1
   
        Debug.Print Left(rs.Fields(i).Name, intPos - 1)
    Next
End Sub


Im obigen Code finde ich den ersten Unterstrich des Feldnamens .. na ja das wisst ihr ja alle ..:)
Nur wie kann ich nun im Code alle diese Feldnamen sagen wir mal "Obje" zu "Ob" ändern..
Da ich sehr viele verschiedene Datenbanken habe würde ich diese gern einheitlich gestallten um eine leichter Weiterverwendung der Daten zu erreichen.

Wäre sehr dankbar um eine Hilfe.

Lg
Silentwolf

Titel: Re: Feldname in Tabelle ändern per VBA
Beitrag von: el_gomero am Juni 30, 2016, 11:32:45
Hallo,

etwa so (ungetestet):

Dim tdf as DAO.Tabledef, fld as DAO.Field

set tdf = currentdb.TableDefs("DeineTablle")
   For each fld in tdf.Fields
       If fld.name like "Obje*" Then fld.name = left(fld.name,2) & mid(fld.name,5, len(fld.name)
   next fld
set tdf = nothing

Titel: Re: Feldname in Tabelle ändern per VBA
Beitrag von: silentwolf am Juni 30, 2016, 11:41:55
Hi,

el_gomero..

danke ich werde es gleich mal probieren!

Schöne Grüße

Silentwolf