Hi Accessianer!
Ich möchte eine Tabelle (mit dem Namen "Umsatzsteuersätze") mit zwei Spalten anlegen, die als Basis für eine andere Tabelle dienen soll.
1. Spalte: Jahr (z.B. "2011")
Habe festgestellt, dass man unter dem Felddatentyp "Datum/Uhrzeit" gar nicht die Jahreszahl alleine auswählen kann.
Kann ich den Felddatentyp "Zahl" benutzen? Werden die Werte als Jahr überhaupt anerkannt?
2. Spalte: Umsatzsteuersatz (z.B. "19%")
Obwohl ich den Felddatentyp "Zahl" und das Format "Prozentzahl" ausgewählt habe, zeigt er mir immer nur eine "0,00%" an, wenn ich eine Zahl eingebe, z.B. die Zahl 19, also für 19%.
Was mache ich bloss falsch?
Vielen, vielen Dank für eine kleine Hilfe!!!
Viele Grüße
Rainer
Hallo,
1) Reserviertes Wort "Jahr" als Feldnamen dringend vermeiden. Eine Jahreszahl(!, "2011") ist auch kein Datum/Uhrzeit, sondern eben nur eine Zahl. Die eingebene Zahl wird als Zahl "anerkannt," es ist dann Deine Sache, diese Zahl bei deren Verwendung als "Jahreszahl" zu interpretieren.
2) Formate sind wie Schall und Rauch... Definiere das Feld entweder als Zahl, Long Integer und interpretiere eine darin stehende Zahl als "Prozentzahl" ( z. B 19 als 19 Prozent und rechne später entspr. mathematisch korrekt damit ---> 19/100 ) oder definiere als Zahl,Double (z. B. 0,19 , wobei Du diesen Wert später ohne weitere Anpassung direkt verwenden kannst. )
Hallo Franz,
zunächst mal vielen Dank! :)
1. Spalte: Okay, werde Zahl verwenden.
2. Spalte: Gibt es da keine Möglichkeit das "eingabefreundlicher" zu machen - d.h. wenn man 19 eingibt, dass man 19% angezeigt bekommt (wie Excel)? Möchte später im Formular die ganze Prozentzahl eingeben, um Fehler zu vermeiden. Habe übrigens eben herausbekommen, dass wenn man eine größere Zahl als 50 eingibt, man "100,00%" angezeigt bekommt. Irgendwie scheint er hier zu runden, also bei Eingabe <50 zeigt er "0,00%" an, bei Eingabe >50 zeigt er "100,00%" an. Lässt sich diese "Runderei" irgendwie abstellen?
Viele Grüße
Rainer
Hallo,
du solltest dich an die Empfehlung von DF6GL halten und die eingegebenen Zahlen in der Tabelle nicht formatieren.
Eingaben erfolgen in der Regel ausschließlich über Formulare und da kann man mit Formaten arbeiten wie es einem beliebt.
ZitatHabe übrigens eben herausbekommen, dass wenn man eine größere Zahl als 50 eingibt, man "100,00%" angezeigt bekommt
Aha ...
Ich weiß zwar nicht was du da schon alles herumgeschraubt hast aber wenn du das Feld für die Prozentzahl folgendermassen definierst...
Feldgröße: Double
Format: Prozentzahl
Dezimalstellen: 2
...dann kannst du Werte eingeben <50 oder >50 und sie werden auch richtig angezeigt - mit 2 Kommastellen und %-Zeichen.
wobei trotz Allem die formatlose Eingabe im Vordergrund stehen sollte!
HTH
Hallo Peter,
mein Fehler lag darin, dass ich unter Feldgröße versehentlich "Dezimal" eingegeben hatte - deshalb kam es zu diesen "Rundereien". :o
Vielen Dank für Eure Empfehlungen, werde in Formularen die entsprechenden Formate einstellen.
Nochmals vielen Dank für Eure Hilfe und ein schönes Wochenende! :D
Viele Grüße
Rainer
Abere bitte, keine Ursache, auch dir ein schönes WE!
Bitte den Thread in deinem ERSTEN Beitrag auf 'gelöst' setzen, wenn das Thema damit abgeschlossen ist - DANKE!
Hallo Franz,
hallo Peter,
irgendetwas funktioniert bei mir nicht richtig, ich muss das nochmal Schritt für Schritt durchgehen.
Habe mich an Eure Empfehlungen gehalten und habe die Spalte "Umsatzsteuersatz" der Tabelle "Umsatzsteuersätze" als Long integer definiert.
Neu ist: Habe zu dieser Spalte die Untertabelle "Regelumsatzsteuersätze" entworfen, in der in der Spalte "Regelumsatzsteuersatz" in zwei Zeilen die Werte 16 und 19 stehen, auch als Long integer definiert.
Diese beiden Tabellen sind in einer 1:n-Beziehung verbunden (ID aus Tabelle "Regelumsatzsteuersätze" zu "Regelumsatzsteuersatz" aus Tabelle "Umsatzsteuersätze").
Das Problem:
Gebe ich in Spalte "Regelumsatzsteuersatz" (also in der Untertabelle "Regelumsatzsteuersätze") eine Zahl ein (z.B. 16), wird diese ohne Kommastellen angezeigt, egal ob ich einen Wert ohne Komma (16) oder mit Komma (16,5) eingebe. Und das obwohl ich die Dezimalstellenanzeige auf "2" eingestellt habe.
Wie kriege ich das hin, dass ich zwei Stellen hinter dem Komma angezeigt kriege?
Viele Grüße und Dankeschöns im Voraus
Rainer
Hallo,
ZitatHabe mich an Eure Empfehlungen gehalten und habe die Spalte "Umsatzsteuersatz" der Tabelle "Umsatzsteuersätze" als Long integer definiert.
Long Integer kann keine Kommastellen. (Long) Integer ist immer eine Ganzzahl. Nimm Double als Datentyp.
Die Empfehlungen gingen davon aus, dass Du immer ganze Prozentzahlen hast, wei Du es aj auch geschrieben hast.
Hallo MzKlMu,
konnte es in der Untertabelle "Regelumsatzsteuersätze" ändern, in der übergeordneten Tabelle "Umsatzsteuersätze" geht das aber wegen der Beziehung nicht - es kommt die Meldung: "Sie können weder den Datentyp noch die Größe dieses Felds ändern. Es ist Teil einer oder mehrerer Beziehungen."
Viele Grüße
Rainer
Hallo,
lege separate Schlüsselfelder (PK=Autowert, FK=LongInteger) an und lasse darüber die Beziehungen laufen. Kommazahlen für eine Beziehung sind eh nicht zu empfehlen.
Hallo MzKlMu,
wo soll ich die beiden Schlüsselfelder legen?
Hier nochmal die momentane Tabellen-Übersicht (stark vereinfacht):
Untertabelle Regelumsatzsteuersätze:
1. Spalte: ID (Autowert)
2. Spalte: Regelumsatzsteuersatz (Zahl, Double)
Haupttabelle Umsatzsteuersätze:
1. Spalte: ID (Autowert)
2. Spalte: Regelumsatzsteuersatz (Zahl, Long Integer -> lässt sich nicht in Double ändern, da Beziehung)
Viele Grüße
Rainer
Hallo,
wozu brauchst Du da eine Beziehung?
Entferne im Beziehungsfenster die Verknüpfungslinie.
Übernehme später mittels Kombi den benötigten Regelumsatzsteuersatz in Deine "Haupttabelle". Die "Regelsteuersätze" bilden doch nur eine Vorlage zur einfacheren Auswahl eines bestimmten Regelsatzes...
(Soweit ich Dein Problem verstanden habe.)
In beiden Tabellen setzt Du übereinstimmend den Datentyp Zahl, Long oder Zahl, Double (Double könnte(!) auch "Währung" sein. Bei Double (Fließ-, bzw- Gleitkomma) mußt Du mit einer Genauigkeit von 15 Stellen insgesamt rechnen, bei Währung (Festkomma) mit 4 Stellen hinter dem Komma. Beide entwickeln Rundungsprobleme bei ungünstigen Rechenoperationen)
Auswahl und Abspeichern erfolgt hier dann mit dem Wert selber, nicht über den PK-Wert
(Ich weiß, das steht etwas in Konfikt mit einer perfekt normalisierten Tabellensituation. Letzendlich muß sich da aber nach der insgesamten Aufgabenstellung richten)
Hallo Franz,
habe die Untertabelle aufgebaut, um nicht gegen die Normalformen zu verstoßen, da gleiche Werte mehrmals vorkommen.
Funktioniert Access auch ohne Beziehungen oder müssen diese zwanghaft aufbebaut werden?
Okay, habe Verknüpfungslinie gekappt und in beide Tabellen Double und 2 Dezimalstellen eingetragen.
Habe jetzt überall als Format Prozent genommen. Wenn ich jetzt in der Haupttabelle einen Wert aus der Untertabelle nehme, wird dieser seltsam dargestellt. Statt z.B. 19,00% steht da 019%. Und bei einer beliebigen Kommazahl rundet er auf, z.B. wird 16,50% zu 017%.
Wie kann ich hier die gleichen Werte angezeigt bekommen, so wie sie mir im Dropdown-Menu angezeigt werden?
Vielen Dank im Voraus und einen schönen Abend.
Viele Grüße
Rainer
Hallo,
lass doch mal diese Prozent-Formatierung einfach weg.
Wie willst Du nun die Prozentzahl "verarbeiten":
19
19,5
0,19
??
Tabellen müssen nicht zwangsweise im Beziehungsfenster verknüpft werden. Diese Verbindungen sagen ja nur der JET-Engine (dem Access-DB-Sysetm), ob und auf welche Datenkombinationen es achten und diese prüfen soll.
Hallo Franz,
okay, weiss jetzt über Verknüpfungen bescheid.
Bezüglich Format: Soll ich dann Format in beiden Tabellen ganz leer lassen?
Viele Grüße
Rainer
Ja,
allenfalls 2 Kommastellen angeben
Hallo Franz,
vielen Dank für Deine Hilfe!
Habe jetzt in beiden Tabellen 2 Dezimalstellen angegeben.
Trotzdem werden Zahlen nicht immer mit zwei Stellen nach dem Komma angezeigt.
Wenn ich z.B. 19 eingebe, werden nicht 19,00 angezeigt, sondern 19.
Wenn ich z.B. 16,5 eingebe, werden nicht 16,50 angezeigt, sondern 16,5.
Es wird quasi die letzte Ziffer, wenn es eine Null ist, weggelassen.
Nochmals Danke für Deine Geduld - hätte nicht gedacht, dass das mit der Formatierung so langwierig wird. :o
Viele Grüße
Rainer
Hallo,
formatiere erst das Feld in der Anzeige, also entweder im Formular oder Berichtsfeld.
Du kannst direkt die Formateigenschaft des Feldes verwenden.
Hallo,
stelle im Tabellenentwurf für besagtes Feld ein:
Feldgröße: Double
Format: Festkommazahl
Dezimalstellen: 2
Dann bekommst du IMMER 2 Kommastellen angezeigt, egal welchen Wert du eingibst (19,0 oder 19 oder 19,0000)
ABER frei nach MzKlMu:
Es ist völlig Wurscht wieviele Kommastellen in der Tabelle angezeigt werden.
Es muss nur das Feldformat stimmen (hier Double) um auch Kommastellen zu speichern.
Die endgültige FORMATIERUNG sollte am Formular oder im Bericht erfolgen.
HTH
Hallo MzKlMu,
vielen Dank für Deine Antwort!
Hoffe, ich habe alles richtig gemacht, habe von den beiden Tabellen (Unter- und Haupttabelle) je ein Formular erstellt und in der Layoutansicht (hoffe das ist richtig) mit Prozentzahl (möchte ich wenigstens in den Formularen haben) und mit 2 Dezimalstellen formatiert.
Im Untertabellenformular zeigt er mir alles perfekt an (Prozentzeichen und 2 Dezimalstellen).
Im Haupttabellenformular zeigt er mir kein Prozentzeichen an und mit einer Null vornedran (also statt 19,00% nur 0,19).
Ich weiss nicht woran das liegt.
Was soll ich mit den nach wie vor in den Tabellen stehenden Werten (Double und 2 Dezimalstellen) machen?
Viele Grüße
Rainer
Hallo Peter,
zunächst mal Danke!
Habe in beide Tabellen, wie Du vorgeschlagen hast, "Festkommazahl" hinzugefügt - Double und 2 Dezimalstellen standen ja, wie bereits im letzten Posting erwähnt, schon drin.
Habe jetzt aufeinmal in der Haupttabelle und im Haupttabellenformular drei Nullen stehen.
Wollte die Datei hochladen, geht aber nicht, da diese angeblich über 200 KB groß ist, obwohl ich sie über "Komprimieren und Reparieren" auf 68 KB verkleinert habe.
Viele Grüße
Rainer
Hallo,
zippen hilft vielleicht die Datei auf ein verwendbares Maß zu verkleinern.
Hallo Peter,
komisch - unter "Eigenschaften" ist die Datei 576 KB groß, beim Markieren mit der Maus wird unten rechts im Monitor 68 KB angezeigt.
Habe eine stark vereinfachte Version (mit Fantasiezahlen) meiner Datei dem Anhang beigefügt.
Viele Grüße
Rainer
[Anhang gelöscht durch Administrator]
Hallo,
hab mal ein bisschen gespielt.
Das ID-Feld in der Jahrestabelle ist unnötig, desgleichen die Beziehung zu tblUmsatzsteuersätze. Das Gleiche gilt für tblRegel... zu tblUmsatzst...
(Außer man hat eine Abneigung gegen Double-Werte als Primärschlüssel :D )
Die Datensatzherkünfte für ein Kombifeld sollten jeweils aus einer Abfrage mit dedizierter Select-Liste bestehen, damit man Kontrolle hat über die Reihenfolge der Tabellefelder bezgl. der Kombilistenspalten.
Alle Formatangaben sind entfernt wie auch die Nachschlagefelder in den Tabellen.
Der angezeigte Wert für die Steuersätze ist nicht als "Prozentwert" anzusehen, sondern als mathematischer Faktor.
Wenn der Steuersatz-Wert als ganzzahlige "Prozentzahl" behandelt werden soll, so sollten die Double-Felder in Long umgewandelt werden. Das Prozentzeichen kann dann in einem Bezeichnungsfeld hinter dem Textfeld dargestellt werden, und nicht als formatierter Bestandteil des Textfeldwertes. In diesem Fall ist bei der rechnerischen Verwendung des StSatzes natürlich immer mit 100 zu dividieren.
[Anhang gelöscht durch Administrator]
Hallo Franz,
vielen Dank für Deine Hilfe. :)
Werde mir erst morgen das Ganze in Ruhe anschauen - ist schon spät.
Viele Grüße
Rainer
Hallo Franz,
habe mir Deine Vorschläge genauer angeschaut und sie entsprechend umgesetzt.
Funktioniert alles prima. :)
Vielen Dank für die vielen Tipps und ein schönes Wochenende!
Viele Grüße
Rainer