Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1736to1740
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zelle (Bezeichnung) mit Eingabemaske suchen, Daten auf nächsfreier Zelle unterhalb einfügen

Zelle (Bezeichnung) mit Eingabemaske suchen, Daten auf nächsfreier Zelle unterhalb einfügen
02.02.2020 00:02:09
Manu
Hallo zusammen
Erstmal vielen Dank für alle welche hier Einträge beantworten. Konnte schon viele wertvolle Inputs abholen!
Ich folgendes Problem:
Ich habe auf einem Excelblatt verschiedene Konten aufgeführt (insgesamt über 50, immer vier nebeneinander). In den Zellen B3, E3, H3, K3 und dann wieder B25, E 25, H25, K25 sind die Bezeichnungen der Konten aufgeführt. Direkt darunter (Beginnend bei B3, etc) sollen jetzt die Kontobuchungen erscheinen, welche ich über eine Eingabemaske eintragen möchte. Die Eingabemaske soll über folgende Funktionen verfügen: Dropdownfeld, in welchem das betreffende Konto ausgewählt werden kann. Eingabefeld für Betrag und Buchungstext und zwei Schaltflächen (den Eintrag einfügen und Eingabemaske löschen). Der Eintrag soll auf der jeweils nächsten freien Zelle unterhalb der letzten Buchung vorgenommen werden.
Ich bin ein absoluter Noob in VBA, habe mittels Youtube, Foren etc einige Versuche gestartet, komme aber über folgende Probleme nicht hinaus:
- Zellen definieren für die Dropdown-Auswahl (So werden neu erfasste Konten bei jedem aufrufen der Datei aktualisiert)
- Eintrag der Buchung auf der nächsten freien Zelle unterhalb des ausgewählten Kontos
Leider darf ich die Originaldatei nicht hochladen, habe aber eine vereinfachte Version hochgeladen.
https://www.herber.de/bbs/user/134914.xlsm
Würde mich über einen Lösungsvorschlag sehr freuen!
Vielen Dank und Gruss
Manu

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle (Bezeichnung) mit Eingabemaske suchen, Daten auf nächsfreier Zelle unterhalb einfügen
02.02.2020 01:35:25
Oberschlumpf
Hi Manu,
hier, teste mal
https://www.herber.de/bbs/user/134915.xlsm
Mein Code sucht zuerst die Namen aller konten und fügt diese in die Combobox ein.
Nach Auswahl einer der Konten und Eingabe von Betrag + Text für Betrag wird nach Klick auf "Daten eintragen" zuerst die Kontoüberschrift gesucht (+gefunden).
Jetzt wird nach der nächsten, leeren Zelle unterhalb von Kontoüberschrift gesucht.
Wenn gefunden, wird in die leere Zelle Text für Betrag und in der Nachbarzelle der Betrag eingetragen.
Als "Überwachung" habe ich nur erst mal eingebaut, dass der Button "Daten eintragen" nur dann den Code ausführt, wenn zuvor alle erforderlichen Daten ausgewählt + eingetragen wurden.
Wenn eines der Felder = leer, dann Abbruch mit hinweismeldung.
Noch nicht überwacht wird das Textfeld für den Betrag.
Das Feld sollte ja nur einen Zahlenwert enthalten. Einziger nicht numerischer Wert ist das Komma.
Alle anderen nicht numerischen Werte dürfen nicht eingetragen werden.
Wenn du das nicht hinbekommst, kannst du das ja in einem neuen Beitrag erfragen.
Auch wichtig ist, dass deine Originaldatei vom Aufbau genau so sein muss, wie deine Bsp-Datei.
Denn mein Code ist ja an die Bsp-Datei angepasst; funktioniert unverändert sehr wahrscheinlich also auch nur in der Bsp-Datei.
Wenn deine Originaldatei anders aufgebaut ist, musst du nur den Code anpassen.
Wenn du da Hilfe benötigst, zeig eine Bsp-Datei, die vom Aufbau genau so aussieht, wie das Original.
Hilfts?
Ciao
Thorsten
Anzeige
AW: Zelle (Bezeichnung) mit Eingabemaske suchen, Daten auf nächsfreier Zelle unterhalb einfügen
02.02.2020 18:18:53
Manu
Hallo Thorsten
Weltklasse! Das Ding funktioniert super.
Ich habe noch eine Schaltfläche eingefügt, mit welchem ich die Eingabemaske direkt aufrufen kann.
In der Originaldatei hat es jedoch noch weiteren Text in anderen Zellen, der nichts mit den Kontobezeichnungen zu tun hat. Wie kann ich bestimmen, dass die Namen nur in den bestimmten Zellen abgefragt werden?
Alternativ könnte ich auch ein weiteres sheet (Tabellenblatt2) anhängen, in welchem alle Kontonamen in einer Kolonne aufgeführt sind (Und dann die Bezeichnung der Konten auf dem Tabellenblatt1 mittels "normalen" Excel Code auch dort abholen).
Wie müsste ich den Code anpassen?
Grüsse
Manu

Option Explicit
Sub Schaltfl?che1_Klicken()
UserForm1.Show
End Sub
Sub sbFillCmb()
Dim lrCell As Range
UserForm1.Kontoauswahl.AddItem
For Each lrCell In ActiveSheet.UsedRange
If lrCell.Value  "" Then
If lrCell.Offset(0, 1).Value = "" And _
lrCell.Offset(0, -1).Value = "" Then
UserForm1.Kontoauswahl.AddItem lrCell.Value
End If
End If
Next
End Sub
Sub sbFillInTable()
Dim lrCell As Range, lloRow As Long
UserForm1.Kontoauswahl.AddItem
For Each lrCell In ActiveSheet.UsedRange
If lrCell.Value = UserForm1.Kontoauswahl.Text Then
For lloRow = lrCell.Row To lrCell.Row + 22
If Cells(lloRow, lrCell.Column).Value = "" Then
Cells(lloRow, lrCell.Column).Value = UserForm1.EingabefeldBuchungstext. _
Text
Cells(lloRow, lrCell.Column + 1).Value = UserForm1.EingabefeldBetrag. _
Text
Exit Sub
End If
Next
End If
Next
End Sub

Anzeige
AW: Zelle (Bezeichnung) mit Eingabemaske suchen, Daten auf nächsfreier Zelle unterhalb einfügen
02.02.2020 18:30:05
Oberschlumpf
Hi Manu,
ich hab extra geschrieben:
Auch wichtig ist, dass deine Originaldatei vom Aufbau genau so sein muss, wie deine Bsp-Datei.
Denn mein Code ist ja an die Bsp-Datei angepasst; funktioniert unverändert sehr wahrscheinlich also auch nur in der Bsp-Datei.
Wenn deine Originaldatei anders aufgebaut ist, musst du nur den Code anpassen.
Wenn du da Hilfe benötigst, zeig eine Bsp-Datei, die vom Aufbau genau so aussieht, wie das Original.

WAS bitte soll ich dir jetzt noch schreiben?
Ich weiß doch nicht, in welchen Zellen im Original weiterer Text steht, der NICHT berücksichtigt werden soll.
Ciao
Thorsten
Anzeige
AW: Zelle (Bezeichnung) mit Eingabemaske suchen, Daten auf nächsfreier Zelle unterhalb einfügen
03.02.2020 19:34:12
Manu
Hallo Thorsten
Danke für deine Hilfe soweit. Ich habe dir eine Originalversion der Datei angehängt (andere Konten, andere Zahlen).
https://www.herber.de/bbs/user/134956.xlsm
Damit du siehst wo der Zellbezug der Kontobezeichnungen herkommt, habe ich das betreffende Sheet auch drin gelassen.
Das ganze funktioniert nun so:
Anfang Jahr werden die Nummern und Konten in der Kolonne A und B (Sheet "Aufwand) erfasst und mit den jeweiligen Budgets (Kolonne C) versehen. Ich habe in der Kolonne J eine Verkettung drin, welche die Kolonnen A und B zusammenfasst.
Auf dem Sheet "Konto" ist bei der Überschrift der Konten der selbe Code (Verkettung) drin, welcher er aus dem anderen Sheet (Kolonne A+B) holt. direkt unterhalb der Überschrift wird auf der linken Seite des senkrechten Trennstrichs die Anfangsbuchung erfasst. Die Zahl holt er sich direkt aus dem anderen Sheet in der jeweiligen Zeile (ein Buchungstext ist bei der Anfangsbuchung nicht nötig). Dein Code schreibt nun auf die andere Seite des Trennstrichs zuerst den Betrag und dann den Buchungstext (habe den Code angepasst). Rechts des jeweiligen T-Kontos wird per Auswahl unter dem Textfeld "Status" der Stand der Buchung erfasst. Die zweitunterste Zahl rechts des Trennstrichs im T-Konto zeigt das noch übrige Budget an (Im ersten Konto "10 Umlaufvermögen die Zelle D18). Diese Zahl wird dann auf das Sheet "Aufwand" gezogen, wo es in den Kolonnen H und I eine Kurzübersicht der Budgets generiert.
So weit: Prächtig
Auch dein Code funktioniert super. Nur nimmt er alle Eingaben (exkl die der Eingabemaske selbst) und führt sie in der DropDown-Auswahl aus. Ich habe den Text mehrheitlich gelöscht oder durch Textfelder ausgetauscht. Aber leider habe ich nicht herausgefunden, wie man deinen Code anpasst, so dass er die Infos fürs Dropdown-Feld woanders holt.
Kannst du mir sagen, wie ich die Dropdown-Auswahl in der Eingabemaske so hinkriege, dass sie entweder nur die Kontoüberschriften auf dem Sheet "Konten" beachtet, oder (was wohl einfacher wäre) auf die Kolonne J im Sheet "Aufwand" zugreift (Ich habe in der Eingabemaske schon ein neues Dropdown-Feld hingekriegt, aber ich kann es nicht mit der Eingabe von "Betrag" und "Buchungstext" verknüpfen).
Vielen Dank für deine Hilfe
Grüsse
Manu
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige