MS-Office-Forum
Google
   

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > Microsoft Access
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads Der Renner, 11 Entwicklertools für Access, Tipps & Trick und offene Datenbanken zum einzigartigen Preis.
Themen-Optionen Ansicht
Alt 09.09.2017, 19:48   #1
Silentwolf
MOF User
MOF User
Standard Acc2010 - Feldname von Klein auf Großschreibung

Hallo an alle .)

bräuchte mal ein bisschen unterstützung bitte.
Ich habe diesen Code hier probiert aber ich sobald er in die For Each Zeile kommt bekomme ich schon einen Fehler. 3251 Operation wird für diesen Objekttyp nicht unterstützt.
Nun weiß ich nicht woran das liegen kann da ich schon einige andere Codes gefunden haben die eigentlich ja genau die selben Variablen benutzen..

Zugleich würde ich überhaupt gern wissen ob dieser Code mir kun_Nachname in Kun_Nachname umwandelt.
Leider habe ich einige Tabellen mit klein Buchstaben begonnen und würde diese gern auf Großbuchstaben umwandeln also das erte Zeichen.

Code:

Sub FeldnameAendern()
    Dim dbs As DAO.Database
    Dim tdf As DAO.TableDef
    Dim fld As DAO.Field
    
Set dbs = CurrentDb
Set tdf = dbs.TableDefs("tblKundenAendern")

   For Each fld In tdf
       If fld.Name Like "kun*" Then
        fld.Name = UCase(Left(fld.Name, 1))
       End If
   Next fld
   
Set tdf = Nothing
End Sub
Könnte mir hier bitte jemand helfen?

Vielen Dank

__________________

Gruß
Albert
Silentwolf ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 09.09.2017, 19:57   #2
gpswanderer
MOF Guru
MOF Guru
Standard

Hallo,
Du machst so wie Du das jetzt hast aus dem Feldnamen einen einzigen Großbuchstaben, der Rest des Namens wird unterschlagen. Das musst Du noch ergänzen:
Code:

UCase(Left(fld.Name, 1)) & Mid(fld.Name, 2)
sonst hast Du nur den einen Buchstaben.
Zum Rest (Fehlermeldung) kann ich leider nichts sagen, da musst Du auf einen Experten warten.

__________________

Gruß
Klaus
Office2010, Win10
gpswanderer ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.09.2017, 07:09   #3
Silentwolf
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hallo Klaus,
Danke für Deine Antwort!!
Hab Deine leider zuerst übersehen und mir nochmal das ganze angeschaut.

Code:

Sub TabelleneigenschaftenAendern()
    Dim db As DAO.Database
    Dim tdf As DAO.TableDef
    Dim fld As DAO.Field
    
    Set db = CurrentDb
    Set tdf = db.TableDefs("tblRechnungen")
    
    For Each fld In tdf.Fields
        If fld.Name Like "rech*" Then
            'Hier wird nur der erste Buchstabe auf Groß geändert der Rest bleibt gleich wie in der Tabelle .)
            fld.Name = UCase(Left(fld.Name, 1)) & Right(fld.Name, Len(fld.Name) - 1)
        End If
    Next fld
    
    Set tdf = Nothing
    Set db = Nothing
End Sub
So habe ich es nun lösen können.

Vielen Dank und jeden einen schönen Sonntag

__________________

Gruß
Albert
Silentwolf ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.09.2017, 09:42   #4
gpswanderer
MOF Guru
MOF Guru
Standard

Hallo,
warum nimmst Du Right und nicht Mid ?

__________________

Gruß
Klaus
Office2010, Win10
gpswanderer ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.09.2017, 10:41   #5
Nouba
MOF Guru
MOF Guru
Standard

... oder fld.Name = StrConv(fld.Name, vbProperCase)
Nouba ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.09.2017, 14:01   #6
Silentwolf
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hallo an Euch allen,
ich werde mir Eure Vorschläge gern nochmal ansehen!
Hab die Formel im Netzt gesehen getestet und hat gleich funktioniert deshalb hab ich es verwendet
@Nouba vbProperCase glaub ich funktioniert hier nicht da z.B. tst_Name habe mit vbProperCase würde doch zu Tst_name ändern oder?

__________________

Gruß
Albert
Silentwolf ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.09.2017, 14:48   #7
Nouba
MOF Guru
MOF Guru
Standard

Richtig - in diesem Fall würde StrConv nicht zum gewünschten Resultat führen. Und weil es sich wohl eher um eine einmalige überschaubare Aktion handelt, muss der Code auch nicht auf Performance getrimmt sein. Ansonsten könnte man noch zu Mid$(fld.Name, 1, 1) = UCase$(Mid$(fld.Name, 1, 1)) greifen.
Nouba ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 11.09.2017, 06:16   #8
Silentwolf
Threadstarter Threadstarter
MOF User
MOF User
Standard

Danke Nouba werde mir auch noch diese Option ansehen!

__________________

Gruß
Albert
Silentwolf ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 11.09.2017, 08:08   #9
Silentwolf
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hallo,
@gpswanderer hab es nun auch mit Mid auch probiert und funktioniert einwandfrei!
@Douba habe es mit Deinem letzten Code probiert .. leider bekomme ich eine Fehlermeldung
Code:

Mid$(fld.Name, 1, 1) = UCase$(Mid$(fld.Name, 1, 1))
Variable erforderlich - Zuweisung an diesen Ausdruck nicht möglich.
Zudem hab ich da auch noch eine Frage würde Dieser Code ohne den If Befehl laufen? Oder muß der nach wie vor in die If Block eingetragen werden?

Vielen Dank!

__________________

Gruß
Albert
Silentwolf ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:07 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Copyright ©2000-2010 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günther Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.
Beachten Sie bitte auch unsere Nutzungsbedingungen.