Office: Über inputbox in eine Tabelle schreiben

Helfe beim Thema Über inputbox in eine Tabelle schreiben in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, möchte über eine Inputbox etwas in eine Tabelle schreiben , wie mache ich das ? Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von basti2005, 16. März 2012.

  1. basti2005 Erfahrener User

    Über inputbox in eine Tabelle schreiben


    Hallo,

    möchte über eine Inputbox etwas in eine Tabelle schreiben , wie mache ich das ?
     
    basti2005, 16. März 2012
    #1
  2. miriki Erfahrener User
    Z.B. per VBA über
    opendatabase
    openrecordset
    .addnew
    .edit
    .update
    .close

    Gruß, Michael
     
    miriki, 19. März 2012
    #2
  3. basti2005 Erfahrener User
    dann nenne mir doch bitte mal ein Beispiel wie ich nach dem obrigen Vorschlag zb in die Tabelle "Daten" in das Feld "Text" schreiben kann.
     
    basti2005, 19. März 2012
    #3
  4. miriki Erfahrener User

    Über inputbox in eine Tabelle schreiben

    Ein prima Beispiel findest Du in der Online-Hilfe zu Access unter dem Suchbegriff "addnew" (im VBA-Editor eintippen und F1 drücken). Auch bei --> MSDN gibt's da was.

    Wichtig dabei, unter Extras - Verweise muß die DAO-Bibliothek angehakt sein. Als Default dürfte das neuere ADO aktiviert sein, mit der die Syntax etwas anders, die Vorgehensweise aber fast gleich ist.

    Als Alternative könntest Du natürlich auch einen SQL-String mit --> "INSERT INTO ..." zusammenbasteln und mit docmd.runsql abschicken.

    Gruß, Michael
     
    miriki, 19. März 2012
    #4
  5. basti2005 Erfahrener User
    Sorry blick da nicht durch
     
    basti2005, 19. März 2012
    #5
  6. miriki Erfahrener User
    Dann auch an dieser Stelle nochmal die Frage:

    Was hast Du bisher versucht und was klappte nicht bzw. an welcher Stelle kommst du nicht weiter? Kopiere ggf. den VBA-Code hier rein, damit man sich den mal ansehen kann.

    Gruß, Michael
     
    miriki, 20. März 2012
    #6
  7. basti2005 Erfahrener User
    Also einen Quelltext habe ich noch nicht, weil ich ja schon das Problem habe einen Wert über die Inputbox in eine Tabelle zu schreiben,
     
    basti2005, 23. März 2012
    #7
  8. basti2005 Erfahrener User

    Über inputbox in eine Tabelle schreiben

    So poste jetzt hier einfach mal meinen aktuellen stand der dinge.
    Ich muss noch irgendwie die Inputbox zu laufen bringen.
     
    basti2005, 26. März 2012
    #8
  9. miriki Erfahrener User
    Naja, das hat jetzt ein bißchen was von Henne und Ei... ;-) Du kannst nur einen Wert von einer InputBox in eine Tabelle schreiben, wenn du einen VBA-Source hast. Von alleine passiert da eher nichts.

    Hmmm... Ok... Also das Formular besteht im Prinzip ja nur aus
    a) Formular öffnen ==> Text aus Tabelle lesen und in das Laufschriftfeld einsetzen
    b) Timer ==> Text nach links bzw. rechts umlaufen lassen
    c) Timer-Button ==> Geschwindigkeit aus Eingabefeld in Timer-Intervall setzen
    d) Schließen-Button ==> Formular schließen

    Deine Erweiterung jetzt
    e) Input-Button ==> Anzeigen einer Input-Box

    Und das war's auch schon. Leider verwirfst / ignorierst Du den Rückgabewert der Inputbox. Da kann der Anwender eingeben, was er will, es verschwindet im großen Bit-Bucket.

    Die Inputbox hat einen Rückgabewert, siehe dazu bitte die Online-Hilfe. Diesen Wert mußt du einer Variablen zuweisen und kannst diese dann in die Tabelle schreiben oder direkt in das Laufschriftfeld einsetzen oder auch beides.

    Also als Gerüst so in der Art:
    Code:
    Private Sub btn_Texteingabe_Click()
    
        Dim NeuText As String
    
        NeuText = InputBox("Bitte einen Text eingeben:")
        If (NeuText <> "") Then
            ' ...
        End If
    
    End Sub
    Die Frage ist also, was machst Du bei den 3 Punkten in der Mitte. Und da kommt eben .AddNew, .Edit oder ein entsprechender SQL-String oder was auch immer ins Spiel.

    Ohne Speicherung in der Tabelle würde reichen:
    Code:
           Me!Lauftext = NeuText & "          "
    Mit Speicherung könnte es sowas in der Art werden:
    Code:
            Dim DB As Database
            Dim RS As Recordset
    
            [ ... ]
    
            Set DB = CurrentDb
            Set RS = DB.OpenRecordset("Tabelle", dbOpenDynaset)
            'rs.MoveFirst
            RS.Edit
            RS("Feldname") = NeuText
            RS.Update
            DB.Close
    Gruß, Michael
     
    miriki, 27. März 2012
    #9
  10. basti2005 Erfahrener User
    Super klappt aber das mit den "[...]" habe ich noch nicht so ganz verstanden. Weil das speicher klappt auch ohne ".AddNew" oder ".Edit".

    Jetzt habe ich da noch ne frage:

    In der Inputbox ist ja das Eingabefeld - kann ich dort auch den Text anzeigen lassen (altem Text auslesen) den ich zuvor eingegeben habe um diesen zu ergänzen - so brauche ich den Text nicht immer neu Einzugeben.
     
    basti2005, 27. März 2012
    #10
  11. miriki Erfahrener User
    Ähm, nein, nicht ganz...

    Wenn Du das Formular öffnest, wird der Lauftext aus der Tabelle gelesen. Mit der InputBox wird dann ein neuer Text in das Laufschrift-Feld eingesetzt, aber nicht in der Tabelle gespeichert. Wenn Du das Formular schließt und wieder öffnest, hast Du den alten Text wieder drin.

    Ohne diese .Edit und Konsorten Geschichte kannst Du das ggf. auch erreichen, wenn das Laufschrift-Feld nicht nur ein normales Text-Feld ist, sondern dies auch über eine Datenquelle im Formular mit dem entsprechenden Datenfeld in der Tabelle verknüpft ist. Ohne das muß der Datensatz sozusagen "manuell" aktualisiert bzw. erzeugt werden.

    Klar, aber das hast Du in der Online-Hilfe zur InputBox sicher auch schon gelesen, oder? Die hattest Du Dir nach dem letzten Posting ja bestimmt schon angesehen. Denn ich schrieb ja:
    Du könntest dazu
    Code:
    Dim AltText As String
    
    [ ... ]
    
    AltText = Trim$(DLookup("Datenfeld", "Tabelle"))
    nehmen. Der Text wird dann genau so wie im FormOpen aus der Tabelle gelesen. Ich würde übrigens aus Performance-Gründen eher DFirst anstelle von DLookup benutzen...

    Dann kannst Du AltText als Parameter für die InputBox benutzen.

    Gruß, Michael
     
Thema:

Über inputbox in eine Tabelle schreiben

Die Seite wird geladen...
  1. Über inputbox in eine Tabelle schreiben - Similar Threads - Über inputbox Tabelle

  2. Wert aus Inputbox in Textbox übernehmen ohne Inhalt zu löschen

    in Microsoft Excel Hilfe
    Wert aus Inputbox in Textbox übernehmen ohne Inhalt zu löschen: Hallo zusammen, ich habe mir ein Code mit hilfe KI gebastelt und komme nicht weiter. Wenn ich über die Inputbox eine Text eingebe, soll er den bestehenden Textinhalt nicht leeren sondern die...
  3. VBA Daten in Array durch inputbox befüllen lassen

    in Microsoft Excel Hilfe
    VBA Daten in Array durch inputbox befüllen lassen: Hi zusammen, Ich hab mal wieder eine Excel VBA Frage. Kurz zur Erklärung: Ich erhalte von einem Kunden eine Datei mit wiederum seinen Kunden, die ein bestimmtes Produkt gekauft haben(den Sinn...
  4. Abbrechen Button bei Inputbox

    in Microsoft Excel Hilfe
    Abbrechen Button bei Inputbox: Hallo zusammen, ich habe folgendes Problem: wenn ich bei meiner InputBox auf "Abbrechen" oder auf das "X" zum Schließen des Dialogfeldes drücke, erscheint die Fehlermeldung "Typen unverträglich"....
  5. VBA Makro abbrechen durch Inputbox

    in Microsoft Word Hilfe
    VBA Makro abbrechen durch Inputbox: Hallo zusammen, dank Gerhard H aus diesem Forum habe ich das folgende Makro im Einsatz, bei dem eine Spalte einer Tabelle in Word auf einen vom Anwender eingegebenen Begriff durchsucht wird und...
  6. in der InputBox Eingabe Werte begrenzen

    in Microsoft Excel Hilfe
    in der InputBox Eingabe Werte begrenzen: Hallo ich benötige mal eure Hilfe, ich suche eine Lösung für mein erstes Programm. Ich weiß nicht, wie ich in der Inputbox einen Wert begrenzen kann. Das heißt, wenn der Wert zwischen O und 0,29,...
  7. Datumssuche mit Inputbox

    in Microsoft Excel Hilfe
    Datumssuche mit Inputbox: Hallo Gemeinde, ich bin mit meinem Laienlatein am Ende und hoffe hier des Rätsels Lösung zu finden. Mein Projekt ist ein Dienstplaner. Jede Abteilung hat ein Arbeitsblatt, um An-und Abwesenheiten...
  8. Array mit Range aus InputBox befüllen geht nicht

    in Microsoft Excel Hilfe
    Array mit Range aus InputBox befüllen geht nicht: hallo folgender Code macht einen Fehler. Warum? Code: Sub Versuch() Dim meinArray() As Variant 'Fehler, weil "Typen unverträglich". Warum? meinArray = Application.InputBox("Bitte wähle...
  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