differenziertes Formular

  • Excel

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von xpecidy.

    differenziertes Formular

    Hallo zusammen.
    Ich habe eine Liste mit Kundendaten, in der ersten Spalte steht der Name, in den weiteren Spalten Informationen zu Umsatz & Co.
    Nun ist es so, dass einer von zwei Fällen auftreten kann:
    1) Ein neuer Kunde kann gewonnen werden.
    Für diesen Fall habe ich bereits ein voll funktionstüchtiges Formular, das die Daten in eine neue Zeile einträgt.
    2) Es ändern sich Daten eines Bestandskunden.
    Hier wird es etwas komplizierter. Ideal wäre ein Formular, das als erstes ein dynamisches Dropdown-Menü mit allen Kundennamen hat, das sich automatisch anpasst, wenn unten ein neuer Kunde hinzukommt. Anschließend sollen die Daten, die eingetragen werden, bei den ersten 9 Spalten zu den bereits vorhandenen Daten addiert werden. Bei den weiteren 7 Spalten sollen die neuen Daten die alten ersetzen.
    Das mit dem Ersetzen ist nicht das Problem, aber wie erklär ich ihm das mit dem Addieren?
    Ach so und noch eine Kleinigkeit: Kann ich ihm irgendwie erklären, dass, wenn jemand 356.234 eingibt, das das gleiche ist wie 356234? Aktuell macht er aus dem Punkt ein Komma, was natürlich Schwachfug ist.
    Danke schonmal im Voraus.
    VG Katey
    EDIT: Zu dem letzten Punkt noch: Wenn ich bspw. 4567,34 eingebe, formatiert er mir die Zahl als Text, kann man das auch ändern?
    Huhu Katey,

    woran scheiterst du genau? Was hast du bisher.
    Theoretisch klingt es recht einfach und so wie du es beschreibst, solltest du das auch schaffen!
    Welche informationen brauchst du:
    • Welche Kunde wird bearbeitet (Zeile im Tabellenblatt? Oder ne ID?)
    • Range("AlteZelle").Value = Range("AlteZelle").Value + neuerWert
    • Range(7 Spalten).value = neuen 7 Werte aus Userform (txt1 - txt7)


    Zu der Eingabe könntest du beispielsweise den String "356.234" durch Ersetzen bestimmter Zeichen in eine Zahl verwandeln.
    Sieh dir dazu mal die Funktion "Replace()" an sowie "CInt()".

    lg Markus
    :!: Danke an alle, die ihr Wissen freiwillig teilen und stets so kompetent & höflich sind :!: