Office: (Office 2013) alle Werte von Feldern im Endlosformular in ein Feld schreiben

Helfe beim Thema alle Werte von Feldern im Endlosformular in ein Feld schreiben in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich habe in einfaches Endlosformular, in dem untereinander Uhrzeiten stehen. (20 Datensätze) Nun möchte ich, dass in jeder Zeile... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von andypbc, 16. November 2016.

  1. andypbc Neuer User

    alle Werte von Feldern im Endlosformular in ein Feld schreiben


    Hallo zusammen,

    ich habe in einfaches Endlosformular, in dem untereinander Uhrzeiten stehen. (20 Datensätze)

    Nun möchte ich, dass in jeder Zeile ein zusätzliches Feld ist, in dem alle Uhrzeiten von dem Formular nebeneinander stehen (zb. 07:00,08:00;09:00...) also alle 20 Uhrzeiten
    Also in jeder Zeile die selben Werte.
    Wie schaffe ich es, per VBA alle Werte nacheinander auszulesen und diese dann in ein einziges Feld zu schreiben?

    Vielen Dank.


    Andy
     
  2. JotGe Erfahrener User
    Hallo Andy

    Du kannst hierfür ein Array benutzen. Füge in der Entwurfsansicht Deines Formulars eine Schaltfläche ein. Für diese Schaltfläche stellst Du beim Eigenschaftsblatt im Register Ereignisse bei "beim Klicken" auf Ereignisprozedur.
    Öffne die VBA Umgebung und erstelle das Array
    Code:
    Public Function ZeitEintragen() As Variant
        Dim strZ(1 To 13) As Variant
        strZ(1) = " 07:00"
        strZ(2) = " 08:00"
        strZ(3) = " 09:00"
        strZ(4) = " 10:00"
        strZ(5) = " 11:00"
        strZ(6) = " 12:00"
        strZ(7) = " 13:00"
        strZ(8) = " 14:00"
        strZ(9) = " 15:00"
        strZ(10) = " 16:00"
        strZ(11) = " 17:00"
        strZ(12) = " 18:00"
        strZ(13) = " 19:00"
        strZ(14) = " 20:00"
        ZeitEintragen = strZ
    End Function
    hiernach noch die Funktion welche Dir das Array in eine Zeile schreibt
    Code:
    Public Sub ZeitEinlesen()
        Dim txt As String
        Dim strZeit() As Variant
        Dim i As Integer
           strZeit() = ZeitEintragen
             For i = 1 To 14
                  txt = txt & strZeit(i)
             Next i
          Me.Text0 = txt
    End Sub
    Den Steuerelementnamen "Text0" ersetzt Du bitte mit dem, welchen Du für Dein Element vergeben hast.
    Aufgerufen wird dann mittels der erstellten Schaltfläche die ganze Sache dann mit
    Code:
    Private Sub ZeitLesen_Click()
      Call ZeitEinlesen
    End Sub
    Auch hier bitte wieder den Namen verwenden den Du in Deiner Datenbank der Schaltfläche zugewiesen hast.

    Bitte beachte daß es sich hierbei um statisch vorgegebene Zeiten handelt, welche von Dir zu definieren sind.

    Ich bin mir aber jedoch nicht ganz schlüssig was Du mit dieser Aktion verfolgst. Als Ergebnis füllst Du ein Steuerelement mit einer definierten Zeichenfolge und das wars dann. Du könntest auch einfach ein Bezeichnungsfeld in das Formular einfügen, diese Abfolge der Zeiten eintragen und dann hätte dies den selben Effekt im Endlosformular. Einziger Unterschied zu der VBA Variante ist, daß nach dem Öffnen diese Zeichenkette bereits vorhanden ist und nicht erst erstellt werden muß indem Du auf die Schaltfläche klickst.

    Ich hoffe dennoch daß es Dir weiterhilft.

    Gruß
    JG.
     
    Zuletzt bearbeitet: 18. November 2016
  3. andypbc Neuer User
    vielen Dank für deine Antwort. Der Zweck dieser Funktion ist eine Suche nach bestimmten Zeiten in jedem Datensatz.

    Da habe ich gleich noch eine Frage:
    ich habe 2 Tabellen, die beide die gleichen Feldnamen haben. (Auftragsnr, Kundennr, Abholdatum, Abholzeit... usw). Ich brauche 2 getrennte Tabellen, um eine Terminvergabe auf zwei gleiche Termine zu managen, zb. es können zwei LKWs zur gleichen Zeit kommen und abgeladen werden. Das funktioniert auch wunderbar.

    Ist es jetzt möglich, diese ganzen Datensätze aus 2 Tabellen in einen neue, einzige Tabelle zu schreiben? Diese würde dann nur der Anzeige dienen, wieviele Lkws an einem bestimmten Datum kommen. Wie muss ich die Daten zusammenfügen?

    Danke vielmals

    Andy
     
  4. JotGe Erfahrener User

    alle Werte von Feldern im Endlosformular in ein Feld schreiben

    Hallo Andy,
    Nach dieser Aussage bin ich noch etwas mehr irritiert als vorher. alle Werte von Feldern im Endlosformular in ein Feld schreiben :confused:
    Nur nochmal nur zum Verständniss:
    Das mit VBA gefüllte Steuerelement enthält die Zeichenfolge "08:00, 09:00, 10: .... usw. bis 20:00" als eine Zeichenfolge. Mir fällt momentan nicht ein wie mit dieser Zeichenfolge eine Uhrzeit gefunden werden soll (... in einem Endlosformular???). Wenn diese Funktion jedoch Deine Zwecke erfüllt und Deine Zeiten gefunden werden dann soll es an dieser Stelle auch gut sein. :)

    und
    Ab hier gehe ich mal von einem fehlerhaften Datenmodell aus. In einer Datenbank benötigst Du keine zwei identische Tabellen um zwei LKW's zum gleichen Zeitpunkt zu verwalten. Dies geschieht aus einer Tabelle heraus. Und somit kommen wir zu
    Das wird mittels einer Abfrage erledigt und das Ergebnis dieser Abfrage beispielsweise in einem Listenfeld ausgegeben. Ist ja soweit in vieleicht noch in Ordnung, aber was machst Du wenn sich ein weiterer LKW während des Tages noch anmeldet und abladen will?? Diesen wirst Du dann in der Übersicht (... dient nur der Anzeige ... ) nicht sehen. Es sei denn, Du lässt nach jeder neuen Eintragung in einer der beiden Tabellen diese Abfrage laufen um eine aktuelle Tabelle zu haben, welche Dir dann als Anzeige dient. Abgesehen von der Tatsache daß in Deinem geöffneten Endlosformular nur die Datensätze aus einer Tabelle angezeigt werden. Was zu der offenen Frage "In welche Tabelle kommt nun diese Eintragung", führt. .... Bitte nicht übel nehmen, aber ich glaube immer mehr an einen fehlerhaften Aufbau Deiner Datenbank. Das Thema mit dem Index, welcher für die Datensatzidentifizierung dient möchte ich erst gar nicht anschneiden.

    Nun zu der eigentlichen Frage, die ich nicht unbeantwortet lassen möchte.
    Die Tabellen kannst Du zusammenführen mittels Tabellenerstellungabfrage, Unionabfrage oder Anfügeabfrage.
    Tabellenerstellungsabfrage:
    hiermit erstellst Du eine z.B. Tabelle3 aus der vorhandenen Tabelle 1. Danach fügst Du alle Datensätze aus Tabelle 2 an diese neu erstellte Tabelle 3 mittels Anfügeabfrage an. Alternativ ist auch das direkte anfügen der Daten aus Deiner Tabelle 2 an Tabelle 1 denkbar, was aber wahrscheinlich von Dir nicht gewollt ist. Nutze hierfür den Assistenten von Access.
    Beide Tabellen (1 und 2) zusammen in einer Tabellenerstellungsabfrage würde dazu führen, daß alle Spalten in einer Tabelle erscheinen und und die Datensätze nicht untereinander stehen würden. Daher scheidet dieser Weg aus.

    Unionabfrage:
    Hierbei müssen beide Tabellen identisch vom Spaltenaufbau (Reihenfolge) und vom Informationsgehalt sein, damit das Ergebnis der Abfrage richtig ist. Mit dieser Abfrage wird keine neue Tabelle erstellt, sondern lediglich die Datensätze aus Tabelle 1 und 2 untereinander dargestellt in Form einer Tabelle. Der Abfrageassistent liefert dier hier keine Hilfe. Du mußt die SQL-Anweisung direkt eingeben. Die Syntax sieht wie folgt aus.
    Code:
    SELECT * FROM Tabelle1  UNION SELECT * FROM Tabelle2;
    Dieses Ergebnis kannst Du Dir dann in einem Listenfeld oder als Tabelle anzeigen lassen. Sie kann auch als Grundlage für weitere Abfragen dienen z.B. für eine Tabellenerstellungabfrage.
    Ab hier kommen wir unweigerlich zur Frage der Datensatzidentifizierung. Wie möchtest Du denn noch einen offenen Termin zur Bearbeitung aufrufen für den Fall einer Änderung, wenn die Identifizierung des Datensatzes bereits in einer anderen Tabelle ebenfalls existiert und die Quelle des gewählten Termins nicht bekannt ist? alle Werte von Feldern im Endlosformular in ein Feld schreiben :confused:

    Ich hoffe trotzdem daß ich Deine Fragen insoweit beantwortet habe und es Dir weiterhilft. Sollte Deine Datenbank das machen was Du möchtest, so denke ich, ist es insoweit in Ordnung.
    Dennoch möchte ich nochmalig auf Dein, meiner Ansicht nach, dringend überarbeitungsbedüftiges Datenmodell hinweisen. Suche mit den Begriffen Datenbankmodelle, Aufbau einer Datenbank, relationale Beziehungen usw. Dir mehr Informationen zu beschaffen. Eine sehr gute Adresse ist die Seite von Andreas Stern. http://www.andreasstern.de/buch/index.php
    Das Internet ist voll von guten Seiten.

    Bis dahin ....
    Gruß
    JG.
     
Thema:

alle Werte von Feldern im Endlosformular in ein Feld schreiben

Die Seite wird geladen...
  1. alle Werte von Feldern im Endlosformular in ein Feld schreiben - Similar Threads - Werte Feldern Endlosformular

  2. 6xZahlen aus 6 Feldern Mathematisch Verbinden

    in Microsoft Excel Hilfe
    6xZahlen aus 6 Feldern Mathematisch Verbinden: Hallo irgend wie komme ich auch keinen Grünen Zweig ich Möchte Mathematisch diese Zahlen so verbinden. A1 06 A2 19 A3 01 A4 77 A5 10 A6 03 Es soll die Zahl 0,61901771003 das ERGEBNIS...
  3. Abfrage in Excel importieren - Werte von mehrwertigen Feldern als Text anzeigen

    in Microsoft Access Hilfe
    Abfrage in Excel importieren - Werte von mehrwertigen Feldern als Text anzeigen: Hallo Ihr Lieben, ich habe verschiedene Felder als mehrwertiges Feld definiert und z.B zusätzliche Tabellen erstellen, aus welchen ich Daten für das mehrwertige Feld ziehe. Nun möchte ich eine...
  4. Werte aus zweiter Datei beim Druck in Feld einer Tabelle einsetzen

    in Microsoft Excel Hilfe
    Werte aus zweiter Datei beim Druck in Feld einer Tabelle einsetzen: Hallo zusammen Ich habe, wie der Titel sagt, das Problem, dass ich eine Tabelle habe. Diese ist eine Vorlage und soll knapp 300-mal gedruckt werden. ABER: Beim Drucken soll, pro gedruckter...
  5. ungenauigkeit eines Feldes in einem Bericht

    in Microsoft Access Hilfe
    ungenauigkeit eines Feldes in einem Bericht: Zuerst einmal ein herzliches Hallo an die Runde. Ich arbeite seit ca 18 Jahren mit Access habe aber keine tiefere Kenntnisse mit VBA un ähnlichem. Mein Problem: Ich habe einen Bericht auf Basis...
  6. Mehrere "WENN" Werte in einem Feld

    in Microsoft Excel Hilfe
    Mehrere "WENN" Werte in einem Feld: [ATTACH] Hallo zusammen. Ich habe folgendes Problem. Ich habe per "WENN" Formel eine Tabelle so angelegt, das die eingetragenen Werte in den vorderen zwei Feldern zusammen fassen, wie häufig ein...
  7. Senkrecht nach nicht leeren Feldern suchen und Wert aus Kolonne ausgeben

    in Microsoft Excel Hilfe
    Senkrecht nach nicht leeren Feldern suchen und Wert aus Kolonne ausgeben: Hallo zusammen, ich denke jetzt wird es kompliziert. Ich habe eine Liste mit Zutaten und würde gerne pro Rezept die Zutaten wissen. Heisst, in einem zweiten Tabellenblatt gebe ich in ein Feld...
  8. Höchster Wert einer Gruppe mit allen Feldern

    in Microsoft Access Hilfe
    Höchster Wert einer Gruppe mit allen Feldern: Hallo, ich habe eine Tabelle (gekürztes Beispiel) mit folgendem Aufbau in Access importiert: Tabelle A: ObjectID....GRID_ID.....Text.........INHALT......Shape_Area...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden