Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Access Autowert jährlich automatisch mit Eins beginnen

Frage Microsoft Microsoft Office

Mitglied: bumbum

bumbum (Level 1) - Jetzt verbinden

23.10.2009, aktualisiert 09:36 Uhr, 6765 Aufrufe, 6 Kommentare

Hallo,

Ich möchte, das sich ein Feld (BestNr) wie folgt zusammen setzt: "B"+aktuelles Jahr(09)+ einen Autowert(1)

Ich habe einen Tabelle, mit den Feldern:
BestNrZus = B
BestNr= Autowert(1)
BestDatum= Speicherdatum(23.10.09)

Ich setzte mir das in einer Abfrage zusammen:

NeuBestNr: [BestNrZus] & Jahr([BestDatum])& Wenn(Länge([BestNr])=1;"0000" & [BestNr];Wenn(Länge([BestNr])=2;"000" & [BestNr];usw.))

Die BestNr sieht dann wie folgt aus: B0900001

Mein Problem:
Wenn sich das Jahr ändert soll der Autowert wieder mit 1 beginnen, d.h. B1000001

Könnt ihr mir irgendwie helfen???

LG bumbum
Mitglied: NilsErik
23.10.2009 um 15:16 Uhr
Das sollte so funktionieren:

Public Sub setzeAutowert(sTabelle As String, sSpalte As String, lNeuerWert As Long) 
     
    CurrentDb.Execute "ALTER TABLE " & sTabelle & " ALTER COLUMN " & sSpalte & " COUNTER(" & lNeuerWert& & ",1)" 
                      
End Function
Bitte warten ..
Mitglied: bumbum
23.10.2009 um 16:05 Uhr
Hallo NilsErik,

wird die Funktion dann automatisch zu Jahreswechsel nach dem ersten öffnen im neuen jahr ausgeführt?

LG bumbum
Bitte warten ..
Mitglied: NilsErik
26.10.2009 um 08:33 Uhr
Nein, die Funktion habe ich nur zu Tests genutzt.

Autowerte sind meiner Meinung nach zur Erzeugung eindeutig indentifizierbarer IDs zu nutzen, nicht um schöne Zahlen zu haben. Die kann man sich selbst erzeugen, ggf. aus den Autowerten berechnen.
Bitte warten ..
Mitglied: bumbum
26.10.2009 um 09:13 Uhr
Es bleibt doch trotzdem eine eindeutige Zahl, sie hat nur eine bestimmte Formatierung, es ist bloß der zusatz, das man ihm einem jahr zuweisen kann und sieht, dass es sich um eine Bestellung handelt und nicht um einen Lieferschein oder ähnliches.

Also kannst du mir nicht weiterhelfe, schade.....
aber trotzdem danke.

Hat jemand anderes eine Idee??

lg bumbum
Bitte warten ..
Mitglied: NilsErik
26.10.2009 um 11:58 Uhr
Wenn Du das so durchziehen möchtest, prüfst Du halt, wie der Zähler steht und setzt ihn ggf. auf (Jahr Mod 1000)*10000+1

Führende 0-er ggf. über Format anfügen bei Ausgabe oder in der Tabellendefinition.

Das B kannst Du beim Ausdruck z.B. in der Formatierung angeben oder in einem extra Feld.
Bitte warten ..
Mitglied: bumbum
26.10.2009 um 14:19 Uhr
Hey NilsErik,
danke für deine Unterstützung, ober wo soll denn "(Jahr Mod 1000)*10000+1" hin geschrieben werden? In eine Abfrage oder in einen VBA-Code, oder...?

LG bumbum
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst Access 2010 Textfeld automatisch aktualisieren (2)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Microsoft Office
Access 2016 Profi zur Hilfe gesucht

Frage von dtbsys zum Thema Microsoft Office ...

Datenbanken
Access 2016 vertauscht Monat und Tag in meiner CSV Datei (1)

Frage von iGordon zum Thema Datenbanken ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(2)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Server
gelöst Wie erkennen, dass nur deutsche IPs Zugang zu einer Website haben? (22)

Frage von Coreknabe zum Thema Server ...

LAN, WAN, Wireless
gelöst Statische Routen mit ISC-DHCP Server für Android Devices (22)

Frage von terminator zum Thema LAN, WAN, Wireless ...

Exchange Server
gelöst Migration Exchange 2007 zu 2013 - Public Folder teilweise weg (16)

Frage von Andy1987 zum Thema Exchange Server ...