Zum Inhalt springen

piomode1

Mitglieder
  • Gesamte Inhalte

    282
  • Benutzer seit

Alle Inhalte von piomode1

  1. Hallo, ihr zwo! "Venus": Vor Bananarama kam 'Shocking Blue'.
  2. Hi, Wolle! Ersteinmal vielen Dank für Deine Hilfe. cbo.RowSource="SQL-String" wird mir in Zukunft nützlich sein. Leider löst Dein Vorschlag mein Problem nicht: Es werden zwar alle Firmen sortiert in die Komboliste aufgenommen; DAS macht meine Abfrage auch... Das Problem (mein Wunsch) besteht darin, daß ich beim Öffnen des Formulars kein leeres KomboFeld sehen möchte, sondern schon in diesem Moment automatisch eine Firma. Mit der Eigenschaft "Standardwert" kann ich zwar eine IDKunde eintragen. Das löst mein Problem aber auch nicht, denn es kommen und gehen ständig Kunden. Ich weiß also nie, welcher Kunde alphabetisch jetzt an erster Stelle steht. Nocheinmal wie bereits geschrieben: 1) Die Abfrage und auch Wolles .RowSource liefern die Daten in alphabetischer Reihenfolge. 'DFirst' und 'DMin' liefern nicht das richtige Ergebnis. 2) cbo.ListIndex = 0 liefert Laufzeitfehler '7777' In gespannter Erwarung Eurer Kreativität.
  3. Hi, Sonic83! Herzlichen Glückwunsch zu Deiner Selbsthilfe!!! Ich muß an dieser Stelle zwanghaft ein gelöstes Problem kommentieren: Wie wäre es mit einer kleinen VBA-Funktion? _____ Function NixNull(DeineZahl as String) as String If DeineZahl="XXXXX" then NixNull=DeineZahl Else: NixNull=str(val(DeineZahl)) End If End Function _____ Sorry, ich lasse mir demnächst mal den UBB-Code erklären... <FONT COLOR="#a62a2a" SIZE="1">[ 25. Oktober 2001 21:11: Beitrag 1 mal editiert, zuletzt von piomode1 ]</font>
  4. Hallo, alle zusammen! Ich habe ein Problem, bei dem Ihr mir vielleicht helfen könnt. Ich versuche bisher, es mit VBA zu lösen. ~~~~~ Daten: Tabelle 'tKunde': IDKunde (Autowert, Primary Key) / Firma 108 / B 109 / A 127 / C Auswahlabfrage 'aKunde' (Aufsteigend nach Firma sortiert): IDKunde / Firma 109 / A 108 / B 127 / C [i.O.] Die Datensätze sind löschbar. ~~~~~ Ziel: Ich möchte in einem ungebundenen Kombinationslistenfeld (cbo) als Standardwert beim Öffnen des Formulars jedesmal die jeweilig erste IDKunde stehen haben (Nach Firma alphabetisch aufsteigend sortiert). Also mit den Daten im Beispiel oben die 109. ~~~~~ Problem: DMin ("[iDKunde]", "aKunde") = 108 [i.O.] DMax ("[iDKunde]", "aKunde") = 127 [i.O.] DFirst("[iDKunde]", "aKunde") = 108 [WARUM?] DLast ("[iDKunde]", "aKunde") = 127 [hier: i.O.] Access scheint die Reihenfolge der Ausgabe der Abfrage nicht zu beachten!? ~~~~~ Würde es evtl. auch mit einem Rückgabewert aus einem SQL-String funktionieren? Falls eine solche Lösung von Euch kommt: Ich beherrsche dieses noch nicht so gut und wäre dann dankbar, wenn der "gesamte" VBA-Code angegeben wird: ( "Das Öffnen des rs" MeineVariable = "und nun weiß ich die genaue Syntax nicht" MeineCbo.DefaultValue = Meine Variable "Das Schließen des rs" ) Aus irgendeinem Grund gelingt es mir nicht, den aus einer Abfrage kopierten SQL-String VBA-tauglich zu machen. 'MeineCbo.ListIndex = 0' funktioniert nicht: "Falsche Verwendung der Eigenschaft." ~~~~~ Danke an dieser Stelle schon einmal an alle, die mir helfen wollen! Grüße piomode1 <FONT COLOR="#a62a2a" SIZE="1">[ 25. Oktober 2001 21:22: Beitrag 3 mal editiert, zuletzt von piomode1 ]</font>
  5. piomode1

    Wie kann...

    Hi, prince! Also, wenn ich das alles richtig verstanden habe, willst Du (Listen-)Einträge in einem Kombinationsfeld auswählen bzw. noch nicht vorhandene Einträge sollen in die Tabelle aufgenommen werden, die als Datenlieferantfür Dein Kombofeld dient?!! Kennst Du Dich mit VBA und SQL ein wenig aus? Meine (halbfertige) Idee sieht folgendermaßen aus: Es gibt für das Kombofeld das Ereignis "Bei nicht in Liste". Dahinter schreibst Du einen Code, der Dir per SQL ermöglicht, einen neuen Datensatz mit eben dem Inhalt, der in dem Kombi-Feld steht, an die "Datenlierant"-Tabelle anzuhängen. An den Inhalt kommst Du wahrscheinlich nicht so einfach: DeineStringVariable=forms!DeinFormularName!DeinKombofeldName (Dann dürfte nur der Index zurückgegeben werden. Aber probiere es einfach mal aus.) Ich weiß: Solche Halbfertigkeiten sind eigentlich nicht öffentlichkeitstauglich. Vielleicht regt es aber "die anderen" an, eine fertige Lösung daraus zu basteln!?
  6. Hi, Wolle! Um das Uralt-Problem nochmal aufzuwärmen: Mercuti hat insoweit recht: Mache die Textfelder flach und stelle die Eigenschaft 'Vergrößerbar' auf true. Aber was ist mit einem Beschriftungsfeld (Label) vor dem evtl. nicht vergrößertem Textfeld? Das Label wird nach wie vor angezeigt und damit ist der Effekt =0. Eine Idee, die schon praxiserprobt ist: Ersetze die Labels durch ungebundene Textfelder, in die als Steuerelementinhalt geschrieben wird: =wenn(DeinDatenfeld="" Or DeinDatenfeld Ist Null;"";"DeineBeschriftung) So (o.ä.) habe ich das Problem vor "sehr langer Zeit" gelöst bekommen. Ich mußte eben wieder halbwegs "aus den Fingern saugen". Sorry.
  7. Hi, Sir Lizium! Wenn's denn noch aktuell ist: Ich erkläre es mal mit Access: Öffne die Berichtsabfrage im Entwurf, klicke unten bei den Zielfeldern in ein leeres in der Zeile 'Feld:'. Dann gibst Du dort ein: _____ DeineGewünschteSpaltenüberschrift: DeinFeldnameMitVorname & " " & DeinFeldnameMitNachname _____ Diese Formel trennt dann auch den Vor- vom Nachnamen mit einem Leerzeichen und Du hast im Bericht in der Feldliste ein neues Feld, in dem die (unveränderbare) Kombi steht. Ansonsten ist es behandelbar wie jedes andere Feld.
  8. Hi, Arthur! Dein Problem besteht darin, daß Du nicht genau weißt, wieviele Vor-Punkt-Stellen vorhanden sind!?! Wenn es ich wirklich nur um die Ausgabe in einem Formular handelt, hätte ich da vielleicht eine Lösung: Lege ein Modul an. Darin schreibe folgendes (Sorry, ich habe ubb-code noch nicht ausprobiert...) _____ Function TwoDigits (xZahl) as String TwoDigits=Left$(xZahl,len(xZahl)-2) _ & "." & Right$(xzahl,2) End Function _____ Nun einfach im Bericht ein ungebundenes Textfeld einrichten und als Steuerelementinhalt eingeben: =TwoDigits(DeinFeldMitDerZahl) Es müßte auch funktionieren, wenn Du keine Funktion in einem Modul schreibst, sondern in einem ungeb. St.element beim St.inhalt schreibst "=Left"... bis ...",2)" Nun einfach noch das Originalfeld auf Sichtbar=Nein setzen und fertig. (Evtl. braucht es auch gar nicht mehr im Bericht zu stehen. Ausprbieren...) Vorteil mit der Funktion in einem Modul: Sie ist überall in der Datenbank aufrufbar! Falls nichts funktionieren sollte, bitte ich um eine Rückmeldung, da ich den Code "aus den Fingern" gesogen habe! PS: Ich soll Dir Grüße von Ford und Trillian ausrichten!
  9. Hallo, ihr zwo! Ich denke Ihr habt Euren wirklich klitzekleinen Fehler schon selbst bemerkt: Die Hintergrundfarbe ist 'BackColor'. 'Forecolor' ist die Schriftfarbe!
  10. piomode1

    Datentyp???

    Hi, alle zusammen! Jetzt kommt der Erbsenzähler: MEMO unter Access schluckt 64k. Entspricht 65536 Zeichen je Memo-Datenfeld. Soweit die Theorie...
  11. Hi, Naberius! Versuchs mal mit dem Ereignis 'Nach Aktualisierung' in VBA 'AfterUpdate' Das Change-Ereignis (Bei Änderung) wird bei JEDEM Tastenhieb im entsprechenden Feld ausgelöst...
  12. Hi, BlueSkyDW! Hast Du schon fleißig VBA gelernt? Oder hat sich das Problem erledigt? Dein Problem hört sich im Moment noch nach einem WenigZeiler an! Kurze Rückmeldung ggf. mit Details
  13. Hi StMi! Hier kommt ein neues Kapitel: Stell Dir eine Liste vor, die besteht aus Personalnummer, Nachnamen, Abteilung, Raumnummer, Gehalt. Sogenannte Abfragen (genaueres dazu später) ermöglichen es einem, Informationen aus dieser Liste zu ziehen. Z.B.: Wieviele Mitarbeiter gibt es? Wenn nun alle Daten in einer Tabelle stehen, ergibt sich folgendes 'Problem': Wenn eine Abteilung in einen anderen Raum umzieht, müssen alle Mitarbeiter dieser Abteilung herausgesucht werden, und für jeden Mitarbeiter muß die neue Raumnummer erfaßt werden. Daraus ergeben sich zwei mögliche Fehlerquellen. 1) Es werden Mitarbeiter 'übersehen'. 2) es werden für einige Mitarbeiter vom Anwender falsche Raumnummern vergeben. Hier gehe ich davon aus, daß eine Abteilung zu jedem Zeitpunkt nur genau einen Raum (aber nicht unbedingt den gesamten) belegt. Und nun kommt die Idee der relationen Datenbanken: Da die Raumnummer unbedingt abhängig vom Abteilungsnamen ist und mehrere (Datenbank: beliebig viele. Realität: bis der Raum voll ist) Mitarbeiter in einer Abteilung arbeiten können, wird die Tabelle gesplittet in zwei: tMitarbeiter: Nachname, Abteilung, Gehalt tAbteilung: Abteilung, Raumnummer Die 'Abteilung' muß in beiden Tabellen erfaßt werden, da nur so eine Beziehung zwischen den beiden Tabellen heregestellt werden kann. Wichtig z.B. bei der Frage: "Arbeitet Abel in Raum 123?" Jetzt sucht man in der Tabelle 'tMitarbeiter' Abel heraus, erfährt so die Abteilung, in der sie/er arbeitet und kann anschließend in der Tabelle 'tAbteilubg' die Raumnummer ablesen. Umgekehrt könnte man fragen, wer denn in Raum 234 arbeitet. Jetzt wird in 'tAbteilung' nachgeschaut, welche Abteilungen in Raum 234 sitzen (Und es können ja in unserem Datenbankmodelldurchaus auch mehrere Abteilungen in einem Raum untergebracht sein! (Wie man so etwas verhindern kann: Dazu später)). Ich nehme einmal an, in Raum 234 befindet sich der Schreibpool und die Poststelle. Nun wird die Tabelle 'tMitarbeiter' durchsucht und alle Mitarbeiter, die in den beiden Abteilungen arbeiten, werden ausgegeben. Ein weiterer Vorteil: Alle Abteilungen mit ihrer momentanen Raumnummer werden nur noch genau einmal in 'tAbteilung' erfaßt. Ändert sich für eine Abteilung die Raumnummer, ist jetzt nur noch genau eine Änderung der Raumnummer in 'tAbteilung' nötig! Und noch ein Vorteil: Für jeden Mitarbeiter wird nur noch die Abteilung in 'tMitarbeiter' erfaßt; die Raumnummer ist ja aus der Tabelle 'tAbteilung' hinterlegt. Tip: Bei Verständnisschwirigkeiten bietet es sich an, nachzufragen, ob ich mich nicht verständlicher ausdrücken kann oder man nimmt sich Karteikärtchen und simuliert mal ein paar Abteilungs- bzw. Raumwechsel. Grüße und viel Spaß weiterhin piomode1
  14. SORRY, SORRY, SORRY! An Naberius: Mit dem "Äh?" beziehe ich mich nicht auf Deinen VBA-Code, sondern es sollte lediglich eine Mutmaßung über Floris Wissenstand angestellt werden!!! Grüße und viel Spaß noch (ein im Moment sehr kleiner) piomode1
  15. Hi, Flori! Nachdem auf den VBA-Code von Naberius kein "Äh?" kommt, weiß ich nicht, ob Du nicht schon selber auf folgende Idee gekommen bist: Mit Sicherheit werden die Daten ausgegeben basierend auf einer Abfrage. In eben dieser Abfrage kann Du Dir ein berechnetes Feld einrichten. Einfach im unteren Bereich der Abfrage (in der Entwurfsansicht) in ein leeres Feld der Zeile "Feld" klicken, und nun wird folgende Funktion eingegeben: DeineFeldbezeichung: Wenn(ZuPruefendesDatum+14<Datum();"Noch nicht bearbeitet";"Bearbeitet") Hoffe das hilft (noch). Grüße und viel Spaß noch piomode1
  16. Nur, falls es sich noch nicht erledigt hat: Sollen die Daten derart dargestellt werden, daß die Daten einer Tabelle als Unterformular für jeweils einen Datensatz im Hauptformular abgebildet werden? Und sollen alle Daten änderbar sein? Grüße und viel Spaß noch piomode1
  17. Hi, Tina20! Also, wenn es eine Abschluß-Projektarbeit werden soll, vermute ich ganz vorsichtig, daß Du selber eine entsprechende Datenbank aufbauen / realisieren sollst. Ansonsten sehe ich es genauso wie Du. Gruß und weiterhin viel Spaß piomode1
  18. Hi, StMi! Haben Dir die Links schon weitergeholfen? Ich muß zugeben, ich habe sie bisher nicht betrachtet... Wir haben ja alle einmal angefangen, und ich weiß nicht wo jetzt Dein Kenntnisstand liegt und ob die Antworten der Links wirklich bei Adam&Eva beginnen (und ob das überhaupt nötig ist). Ich fang mal kurz und knapp an: Du/Ihr könnt dann ja hier das vorhandene Interesse kundtun, auf dem folgenden Wege weiterzuverfahren: Zu Deiner Frage "Was ist eine Datenbank?" Also: Eine Datenbank ist erst mal (für den Anfang) nichts weiter als eine mehr oder weniger große Liste. In der Literatur steht:"...die Anordnung der Zeilen und Spalten ist willkürlich." Das heißt nicht, daß man Zeilen UND Spalten miteinander mischen darf, sondern die Reihenfolge der Zeilen (der Datensätze) für sich und die Reihenfolge der Spalten (Datenfeldbeschriftungen) für sich ist egal. Ob in den Spalten erst der Nachname kommt und dann der Vorname oder umgekert ist aus Datenbanksicht egal. Und ob in den Zeilen erst Abel mit (z.B.) seinen Anschriften-Feldern kommt oder erst Bebel mit den zu ihm/ihr gehörenden, ist aus Datenbanksicht ebenfalls egal. Soviel für heute (oder bei Nichtgefallen für sehr, sehr lange Zeit) Gruß und weiterhin viel Spaß piomode1
  19. Kein KONKRETER Vorschlag, aber: Bist Du Anfaenger bzw. brauchst Du den Stoff bildhaft vermittelt? Dann waeren Buecher vom Herdt-Verlag (http://www.herdt.de) oder von der bhv Verlags GmbH nicht verkehrt. Weitere Vorteile: Herdt bietet z.B. im Netz Uebungsdateien/Loesungen kostenlos zum Download an. bhv kostet nicht viel und es steht vielleicht auch nicht sooo viel drin. Aber was drin steht wird in aller (!) Ausfuehrlickeit behandelt. Zum Nachschlagen waeren Buecher von Markt&Technik und Addison-Wessley zu empfehlen (in einem anderen Beitrag nicht von mir (welcher? weiss nicht mehr... Thema? Zumindest Rubrik Datenbanken.) werden auch Buecher von SYBEX gelobt!). Dort draengt jedoch die Zeit: Selbst fuer Access (Office) 2000 (und 97 erst recht) ist hier kaum noch etwas zu bekommen, seitdem XP auf dem MArkt ist! Ich hoffe, mit diesem ausfuehrlichen Beitrag nicht uebertrieben zu haben. Gruss und viel Spass weiterhin piomode1 PS: An dieser Stelle versprochen: Wenn ich einen Beitrag finde, in dem Umlaute stehen, werde ich sie auch benutzen!
  20. Hallo, liebe Leute. Auch wenn das Problem schon geloest ist, habe ich (vielleicht fuer die Zukunft?) eine Lösung unter VBA parat, falls es mal mit Format nicht klappen sollte, bzw. eher, dass eine "variable" Anzahl Nachkommastellen (NkSt) gewünscht ist (ansonsten faellt Euch bestimmt ein Verwendungszweck ein...): _____ Function MeinRunden(DeineZahl, NkSt) MeinRunden = _ (Int(DeineZahl * 10 ^ NkSt + 0.5)) / 10 ^ NkSt End Function _____ Bei dieser Funktion klappt es auch mit negativen Zahlen fuer NkSt: es wird dann vor dem Komma (kaufmännisch) gerundet (wie bei der internen Funktion Runden() auch). Gruss und weiterhin viel Spass piomode1

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...