VBA TextBox Info in neues Tabellenblat kopieren

  • Excel

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    VBA TextBox Info in neues Tabellenblat kopieren

    Hallo zusammen,
    ich bin recht neu und unbeholfen was das umgehen mit VBA angeht. vielleicht bekomme ich hier hilfe.

    Ich habe ein bestehendes excel searchtool mit einer userform in dem 4 textbox informationen eingetragen werden.
    ich würde nun gerne ein CommandButton in die userform hinzufügen der es ermöglich, auf knopfdruck diese vier inhalte in ein neues Tabellenblatt2 in eine bestimmte Spalte Kopiert( A5,D5, E6,A6)

    vielen Dank fürs feedback
    gruß Felix

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Hi.. die Frage lautet,
    was für ein Code steckt hinter dem Commandbutton?
    ich würde gerne den inhalt einer Userform/textboxt1(worksheet1) per Button in zelle A5 (worksheet2) copieren.

    Private Sub CB_Button1_Click()
    Mitarbeiter.Range("A5").Value = SearchTextNote.Text

    End Sub

    gruß
    felix

    Fex2223 schrieb:

    Mitarbeiter (Worksheet2)
    TextBoxNote( Userform Worksheet1)
    Ist jetzt aber sehr wirr.
    Mitarbeiter ist der Name des Tabellenblattes mit dem Objektnamen Worksheet2.
    Das zweite ist durcheinandergewürfelt. Userform und Worksheet1 sind sicher unterschiedliche Objekte.
    Und wahrscheinlich heisst die Userform Userform1 oder so.
    Und wenn der Objektname der Textbox TextBoxNote ist, dann musst du den auch im Code verwenden.

    Visual Basic-Quellcode

    1. ​Worksheet2.Range("A5").Value = Userform1.TextboxNote.Text

    und wenn der Code in der Userform steht, reicht auch die relative Adressierung zum Namespace

    Visual Basic-Quellcode

    1. Worksheet2.Range("A5").Value = TextboxNote.Text

    Du solltest schon verstehen, welche Objekte du hast und welche du davon verwenden willst.

    Ausserdem solltest du vernünftige Objektnamen vergeben.
    Worksheet1 und UserForm1 sind Standardnamen, die umbenannt gehören.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    hi..
    habe diese namen gemomme da es zur beschreibung erschaulicher sein würde. sonst haben sie schon andere namen.

    wenn ich deinen code so eingebe, bekomme ich die Fehlermeldung "variable(worksheet2) nicht definiert"

    Worksheet2.Range("A5").Value = TextBoxNote.Text

    Fex2223 schrieb:

    habe diese namen gemomme da es zur beschreibung erschaulicher sein würde. sonst haben sie schon andere namen.
    Das stiftet nur Verwirrung anstatt Anschaulichkeit.


    Verwende im Code den tatsächlichen Objektnamen des Worksheet.
    Dann klappt's auch ohne Fehlermeldung.

    Oder (Variante2) adressiere über den Sheet-Namen: Worksheets("Irgendwas").Range("A5").Value = TextBoxNote.Text
    Die Version funktioniert halt nicht mehr, wenn du oder der Benutzer den Namen des Sheets ändert und ist deshalb weniger empfehlenswert.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „petaod“ ()