Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Eingabemaske für Tabelle via VBA ?

Eingabemaske für Tabelle via VBA ?
13.08.2008 21:10:00
kiwi279
Hi Ihr,
habe eine größere Adressdatenbank als Excel-Datei.
Der Inhalt sind normale Adressen, zu denen in jeder Spalte separat bestimmte Informationen (Nachname, Vorname, Email, Geburtstag, Beruf etc.) abgelegt sind.
Da die Datensätze immer wieder ergänzt und aktualisiert werden, ist das Suchen mit STRG + F und zellweise Eintragen aus meiner Sicht etwas mühsam und umständlich.
Gibt es über VBA evtl. die Möglichkeit, eine Art Such- u. Eingabemaske zu basteln, die Datensätze aus der Tabelle aufruft u. evtl. Änderungen in die Tabelle übernimmt, ähnlich wie in einer Access-Datenbank ?
Leider haben nicht alle Anwender der Datei Access, so dass ich mich hier mit Excel allein auskommen muss... :-)
Das Hauptblatt der Datei habe ich im Anhang mal mit dazu gepackt (aus Datenschutzgründen wurden die persönlichen Daten auf jeweils einen Buchstaben / eine Zahl reduziert)...:
https://www.herber.de/bbs/user/54588.zip
VG u. vielen Dank Euch für jeden Tipp !
Micha

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 21:36:14
Herby
Hallo Micha,
mit dem Befehl
Worksheets(1).ShowDataForm
kannst du die Datenmaske von Excel in dein Makro einbinden.
Er entspricht im Menü dem Befehl: Daten - Maske. Ist zur Datenerfassung
etwas einfacher für einen unbedarften Anwender.
Viele Grüße
Herby

AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 22:24:17
kiwi279
Hi Herby,
vielen Dank für die schnelle und so simple Lösung - das ist fast schon das, wonach ich gesucht habe: :-)
Kann man diese Maske auch so abändern, dass man beim Aufruf mehrerer Datensätze bei Bedarf auch gleich in jedem Änderungen vornehmen und speichern kann ?
Wenn ich die Standard-Maske verwende, gelingt mir das immer nur bei einem Datensatz, während beim Springen zum nächsten die Änderungen am vorherigen und anschließendem Schließen der Maske nicht übernommen werden.
Hoffe, Du verstehst, was ich meine...?! :-)
VG u. einen schönen Abend,
Micha

Anzeige
AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 22:29:00
Ramses
Hallo
"..beim Aufruf mehrerer Datensätze bei Bedarf auch gleich in jedem Änderungen vornehmen und speichern..."
Ich glaube du musst hier nochmal über die Bücher.
Mit jeder Maske wird immer nur EIN Datensatz bearbeitet.
":...Hoffe, Du verstehst, was ich meine...?! :-)..."
Ja, tue ich. Allerdings werde ich mich hüten sowas zu programmieren :-)
Gruss Rainer

AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 22:53:00
Herby
Hallo Micha,
dazu ist die Datenmaske von Excel leider zu unflexibel. Eine
flexiblere Lösung findest du als AddIn auf dieser Seite:
http://spreadsheetpage.com/index.php/dataform/home
Allerdings löst sie dein Problem, mehrere Datensätze gleichzeitig
anzuzeigen und zu bearbeiten auch nicht auf dem direkten Weg.
Sie zeigt allerdings auch den gerade in der Datenmaske ausgewählten
Datensatz in der Exceltabelle unterlegt an. So ist es dann ein
leichtes, dort den nachfolgenden bzw. vorhergehenden Satz zu
ändern.
Wenns allerdings eine individuelle Lösung sein soll, dann führt an einer
aufwendigen Programmierung kein Weg vorbei.
Viele Grüße
Herby

Anzeige
AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 21:41:00
Uduuh
Hallo,
glaubst du, das sich das jemand ernsthaft anschaut? Makros in einem geschützten Projekt.
Normales Verfahren bei fremden Dateien: Mit deaktivierten Makros öffnen, nachschauen was passieren kann und dann evtl wieder öffnen.
Deine Absicht kann man verwirklichen, ist aber recht aufwändig.
Gruß aus’m Pott
Udo

AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 22:19:00
kiwi279
Hallo Udo,
die Datei war nur dafür gedacht, den Aufbau der Spalten zu zeigen - natürlich kann ich den Schutz aber auch rausnehmen...:
https://www.herber.de/bbs/user/54590.zip
VG,
Micha

Anzeige
AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 22:49:38
hary
Hallo Kiwi
Habe mir auch mal sowas zusammengebastelt. Mit Bild anzeige usw.
Hab ein Beispiel geladen, aber wie Udo sagte...: Deine Absicht kann man verwirklichen, ist aber recht aufwändig.
https://www.herber.de/bbs/user/54591.xls
Gruss Hary

AW: Eingabemaske für Tabelle via VBA ?
13.08.2008 22:58:00
kiwi279
Hi Hary,
vielen Dank für die Datei !
Das wäre genau das, wonach ich gesucht habe (ohne das Bild, da bei mir nur reine Daten)...!
Ist klar, dass Du das nicht einfach mal so schnell schnell für andre programmieren kannst - mir wäre schon riesig geholfen, wenn ich Deinen Code mit ein wenig Hilfe dazu bekommen könnte, ich würde dann einfach probieren, es auf meine Tabelle hin anzupassen...
VG u. einen schönen Abend Dir,
Micha

Anzeige
AW: an alle !!
14.08.2008 18:24:00
hary
Hallo Micha
Habe leider erst am WE Zeit. Vieleicht kann in der Zeit jemand anders helfen. Deshalb Frage offen.Mein VBA-Level liegt ungefaehr bei 3-, deshalb dauert es bei mir durch Rueckschlaege etwas laenger ;-))
Meine Code wird Dir nix nuetzen, da ich diese Userform plus anderen Code unter anderen Bedingungen eingebaut habe. Dieser Code, der drin ist, war nur zur Anschau eingebaut. Werd's trotzdem Versuchen. Versuche mal einen neuen Thread mit dieser Mappe zu oeffnen, vielleicht gehts dann schneller.
Gruss Hary
Wegen mir schau am Montag noch mal hier rein

AW: an alle !!
15.08.2008 07:37:21
kiwi279
Hi Hary,
vielen Dank für die Nachricht ! :-)
Ist gar kein Problem, wenns ein paar Tage dauert - ich bin für jede Hilfe dankbar ! :-)
VG u. ein schönes WE Dir - danke,
Micha

Anzeige
AW: fertig
16.08.2008 14:20:00
hary
Hallo Micha
Ging doch schneller wie gedacht. Ist aber meine Tabelle. Erklaerung im Textfeld. Hoffe das die Makros Dir weiterhelfen, evtl die Tabelle als Ausgang oder was weiss ich.;-)
Wuerde mich trotzdem auf eine Rueckmeldung freuen, da ich das nur spasseshalber mache. Und ich mich freue wenns ohne Fehler laeuft.
https://www.herber.de/bbs/user/54648.xls
Gruss Hary

AW: fertig
17.08.2008 16:06:22
kiwi279
Hi Hary,
das ging ja wirklich schnell - vielen vielen Dank dafür ! :-)
Parallel zu Deiner habe ich auch noch eine Anwort von Herby mit einer ganz ähnlichen Lösung bekommen. ;-)
Beides ist fast ganz genau das, wonach ich gesucht habe, wobei die Lösung von Herby noch ein klein bisschen näher dran war, da der Aufbau hier nach Zeilen und nicht nach Spalten verläuft - ich werde Deine Datei aber auf jeden Fall auch gleich testen und geb Dir gerne noch eine Rückmeldung dazu ! :-)
Bis dahin viele Grüße aus Franken und Dir noch einen schönen Nachmittag - und nochmals danke,
Micha

Anzeige
Erfassungsmaske für Tabelle
17.08.2008 15:12:00
Herby
Hallo Micha,
ich hab mal eine individuelle Datenmaske für deine Tabelle erstellt und den Auswahlpunkt für die Neuerfassung von Daten mit einem Makro unterlegt.
Für Änderungen und Löschungen kannst du mal pobieren und ggf. nochmals nachfragen.
Die Spalten, die in der Tabelle gruppiert sind, habe ich nicht in die Maske mit aufgenommen. Sollten
diese ebenfalls aufgenommen werden, dann kannst du ja die Textboxen anlegen und analog den vorhandenen Procedere in das Makro mit einbinden. Ggf. kannst du auch hier nochmals nachfragen.
https://www.herber.de/bbs/user/54669.zip
Viele Grüße
Herby

Anzeige
AW: Erfassungsmaske für Tabelle
17.08.2008 16:02:07
kiwi279
Hi Herby,
vielen vielen Dank für Deine Email - das ist (fast) genau das, wonach ich gesucht habe ! :-)
Ich bräuchte tatsächlich alle Spalten von A bis X in der Maske, aber das kann ich hoffentlich aus Deinem Code heraus anpassen... ;-)
Was mir noch nicht ganz klar ist, ist das Ändern eines Datensatzes bzw. das Speichern der Änderungen - kannst Du mir sagen, was hierzu noch notwendig ist ?
Vielleicht kannst Du mir auch noch bei folgenden 2 Fragen helfen - ich weiss, das ist viel verlangt, aber es wäre echt eine riesen Hilfe für mich (und für einen guten Zweck): :-)
1) Könnte man das Makro so anpassen, dass es bei Aktivierung jeweils den Datensatz der aktuellen Zeile übernimmt/anzeigt ?
2) Gibt es eine Möglichkeit, das Ganze mit einer Suchfunktion (nur für die Nachnamen) zu kombinieren ?
Alles andere ist wirklich spitze und schon dafür bin ich Dir echt riesig dankbar !!!
VG aus Franken u. Dir noch einen schönen Nachmittag,
Micha

Anzeige
AW: Erfassungsmaske für Tabelle
17.08.2008 23:35:17
Herby
Hallo Micha,
hier das aktualisierte Workbook.
https://www.herber.de/bbs/user/54689.zip
a) sobald die Datenmaske aktiviert wird und die aktive Zelle im gültigen Bereich liegt, wird automatisch
der Datensatz dieser Zeile aktiv in der Datenmaske angezeigt.
b) Wenn in der Listbox der Nachname, oder auch nur die ersten Buchstaben des Nachnamens
eingegeben werden, wird bei jedem erfassten Buchstaben nach dem passenden Wert in in der
Listbox gesucht und der Name in der Listbox angezeigt.
Damit der Name auch im Worksheet angezeigt wird, ist nur noch ein Doppelklick in der Listbox
zu vollziehen, schon wird in der Exceltabelle der entsprechende Datensatz angezeigt.
c) Das Ändern eines Datensatzes funktioniert im Prinzip analog der Neuerfassung:
- zuerst den zu ändernden Datensatz vom Anwender auswählen lassen
i.d.R. wird es der Datensatz sein, der aktiv ist.
- diesen zu ändernden Datensatz in der Datenmaske anzeigen
i.d.R. mit der Zuweisung (Beispiel: Textbox1.Text=worksheets("xxx").cells(xx,yy)
- Änderung vornehmen lassen und Änderung ggf. auf Plausi prüfen
- geänderten Datensatz speichern (i.d.R. den bisherigen Datensatz überschreiben)
Am besten zuerst an einem einfachen kleinen Beispiel ausprobieren !
Viele Grüße
Herby

Anzeige
AW: danke fuer die Rueckmeldung
18.08.2008 13:12:00
hary
Hallo Micha
Wie ich sagte, hier im Forum liegt mein vba-Level bei 3-, und war ja nur als Ansatz gedacht. Denn eigentlich finde ich es manchmal schade das es heisst es geht nicht, ohne auch nur den Hauch eines Ansatzes zu geben( kommt aber selten vor). Und es findet sich trotzdem einer, der eine Loeung parat hat, siehe herby. Habe mir seinen Code angesehen,nur so lernt man!!!
Dank auch an Herby.
Gruss Hary
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge