Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Eingabemaske ändern, Daten übertragen


Betrifft: Eingabemaske ändern, Daten übertragen von: Bernd
Geschrieben am: 06.09.2019 06:57:16

Liebe Excelprofis,

melde mich nach langer Abstinenz wieder zurück und hätte da ein Anliegen.

Habe zwar an meiner Datei schon selber etwas länger herum gearbeitet, bin auch dank Forumsbeispiele etwas weiter gekommen, aber nun merke ich, dass ich mit meinen geringen VBA Kenntnissen an die Grenze gestoßen bin.

Hier meine Musterdatei:

https://www.herber.de/bbs/user/131872.xlsm

In dieser Datei habe ich geschildert, was ich mir Wünsche.

Dennoch hier ein kurzer Überblick:

Es gibt eine Eingabemaske mit Checkboxen, bei gewissen Checkboxen sollte es auch möglich sein, nach dem Anhaken, eine Zahl einzugeben welche dann in Spalte C übertragen werden.

Weiters würde ich gerne alle Daten, nach Erfassung, in die Tabelle1, fortlaufend, übertragen können.

Wie gesagt, ich habe bereits vieles Versucht, auch mit dem Makrorecorder, aber das bisschen VBA Wissen von mir ist zu wenig.

Ich bitte daher Euch um Hilfe und bin für jeden Tip sehr sehr Dankbar.

mfG Bernd

  

Betrifft: Daten übertragen - Gelöst von: Bernd
Geschrieben am: 06.09.2019 11:10:49

Liebe Forumsmitglieder,

die Daten aus einer Spalte auf die andere Seite in eine Zeile zu transponieren, habe ich nun
selbst lösen können.

Bleibt nur mehr das größere Problem mit der Eingabemaske und hoffe auf Hilfe.

Falls es jemanden interessiert, hier mein Lösungscode:

Sub Zeile_kopieren()
 'Bereich kopieren
 Sheets("Auswertung").Range("B1:B45").Copy
 'einfügen in erste freie Zeile in ausgabe
     Sheets("Tabelle1").Select
Sheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues,  _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
 'Kopiermodus beenden
 Application.CutCopyMode = False
    Sheets("Auswertung").Select
    Range("B1:B9,B11:B45").Select
    Range("B11").Activate
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("B1").Select
 End Sub

mfG Bernd


  

Betrifft: dann zu von: UweD
Geschrieben am: 06.09.2019 12:38:09




  

Betrifft: Was zu? Wer... von: Bernd
Geschrieben am: 06.09.2019 12:48:24

HI,

wer lesen kann ist klar im Vorteil, anscheinend scheitert es daran bei Dir, Uwe!

Daher OFFEN!


mfG Bernd


  

Betrifft: Für die anderen, wieder offen, THX von: Bernd
Geschrieben am: 06.09.2019 12:53:04




  

Betrifft: Dann sollte man nicht 'Gelöst' in den Betreff ... von: Luc:-?
Geschrieben am: 06.09.2019 15:15:03

…schreiben, Bernd… ;-]
Gruß, Luc :-?


  

Betrifft: Oh mein Gott... von: Bernd
Geschrieben am: 06.09.2019 16:14:17

Hallo Luc,

bist auch Du des Lesens nicht mächtig?

Im Betreff steht: Eingabemaske ändern, Daten übertragen

Was habe ich in den neuen Betreff geschrieben: Daten übertragen - Gelöst

Logisch das hier nur 50% erledigt wurde, oder nicht?

Schade das nicht nur HaJo hier einen "Stuss" zusammenschreibt, mittlerweile werden es immer mehr.

Lieber kritisieren anstatt zu Helfen!

Ich benötige daher IMMER noch Hilfe, mein Anliegen wurde ja bereits zweimal Kritisiert, aber geholfen hat noch keiner!

mfG Bernd


  

Betrifft: ..wird dir auch keiner mehr helfen... von: robert
Geschrieben am: 06.09.2019 16:27:10

..


  

Betrifft: Das war nur ein Hinweis, Bernd, ... von: Luc:-?
Geschrieben am: 06.09.2019 19:43:55

…weil so etwas in anderen Foren mitunter Standard ist (genau dieses Wort → quasi Keyword!). Aber, wenn du meinst, dass du den nicht brauchst, sogar meinst, hier schreiben immer mehr Leute nur Stuss, bitte sehr, was hält dich dann hier (vgl robert)…‽
(Das war das letzte Mal, dass ich der Teilerledigung Rechnung trage und das Offen-Kästchen aktiviere.)
Luc :-?


  

Betrifft: AW: Höfliche Bitte - keinen Stress mehr im Thread von: Piet
Geschrieben am: 07.09.2019 15:43:09

Höflicher Nachtrag für Bernd und alle Kollegen

ich habe jetzt erst alle Diskussionen zu diesem Thread gelesen! - Bitte zieht mich da bitte nicht mit rein!
Es hat mir Spass gemacht an einer Lösung zu arbeiten, weil es mich technisch interessiert hat eine anzubieten.
Die Schmeiss ich dann nicht wegen Forum Stress, der mich nichts angeht, in die Mülltonne!
Ich hoffe Bernd versteht meine Bitte auch an ihn hier Problembezpgen sachlich zu bleiben ...

mfg Piet


  

Betrifft: AW: Eingabemaske ändern, Daten übertragen von: Piet
Geschrieben am: 07.09.2019 15:28:33

Hallo Bernd

es wurde viel gschrieben, diskutiert, ich hoffe mein Lösung beendet diesen Thread.... Wenn ja bitte schliessen. Haeckchen nicht mehr setzen.

Die UserForm musste ich aendern, verkleinert und TextBoxen hinzugefügt, denn in ein Listenfeld kann man keine Zahlen eingeben! Das geht nur über TextBoxen. Wie ihr das ganze Optisch gestalten wollt ist eure Sache. Die neuen Elemente darf man NICHT löschen, kann sie aber nach belieben verschieben!

Ich denke das Programm erfüllt jetzt alle gewünschten Anforderungen. Man kann Auswahl Zahlen angeben, nach dm kopieren wird der Text gelöscht, die Muster + Auswahl Zellen zurückgesetzt bzw. gelöscht. Und vor dem kopieren gibt es zwei Prüfungen. Getestet wird ob KEINE Auswahl vorliegt? Ob Team Name und Name 1 vorkommen? Sonst kommt eine Fehlermeldung.

Diese Fehlermeldung könnt ihr selbst auf jede Eingabe Zelle von C3 Bis C15 erweitern. Nur meine Fehlermeldung kopieren, unten einfügen, die Zell Adresse und den MsgBox Text aendern. - Fertig! - Das könnt ihr selbst beliebig erweitern.

Würde mich freuen wenn das Programm so geschrieben wurde wie ihr es euch gwwünscht habt.

https://www.herber.de/bbs/user/131899.xlsm

mfg Piet


  

Betrifft: AW: Eingabemaske ändern, Daten übertragen von: Bernd
Geschrieben am: 08.09.2019 05:21:29

Lieber Piet,

recht herzlichen Dank für Dein Supertolle Lösung und ja, Du hast alles so gemacht wie ich es mir tatsächlich gewünscht hatte.

Ich habe soeben alles mal getestet und es läuft. Ein paar Kleinigkeiten wären aber noch von Vorteil, da aus meiner Sicht, das Ein- & Übertragen der Daten irgendwie schwer bedienbar ist. Natürlich für mich kein Problem, aber es gibt auch welche die gerade mal Unfallfrei einen PC hochfahren können :-)

Auch hat sich mittlerweile die Zeilenanzahl geändert, ist ja für einen Kollegen dem auch ständig neues einfällt. Die Daten in den roten Zellen sind Formeln und sollen erhalten bleiben.

Aber beide Probleme kann ich aufgrund Deiner Wahnsinnigen Vorgaben selber umsetzen. Bleibt nur noch ein letztes Problem bzw. Vereinfachung der Handhabung der Userform.

In der Userform soll diese beim Klicken auf die Schaltfläche „Anzahl übernehmen“ die Daten in die Tabelle eintragen, prüfen ob zu jeder Anzahl auch eine Anzahl angegeben wurde und automatisch nach dem Übertragen der Daten, die Userform wieder schließen.

Wenn man die Daten aus der Userform in die Spalte C überträgt und schließt, sind ja alle Daten weg.

Ist es möglich dies so zu gestalten das der User im Falle eines erneuten öffnen der Userform seine eigegebenen Daten noch drinnen stehen und erst beim Finalen übertragen nach Tabell1 diese gelöscht werden?

Da es ja viele „Anzahls“ gibt würde es mir schon genügen wenn Du mir dies anhand von 2 Anzahls im Code einfügen könntest, den Rest kann ich hoffentlich selber erweitern.

Zum Schluss nochmals tausend Dank an Dich für die Spitzenhilfe und Deine Beiträge. Zum anderen Beitrag kann ich aber echt nur sagen, ich war nie unhöflich und machte keinen Stress, den haben die 3 Mitredner selbst produziert. Und Dich werde ich sicherlich in keine Diskussion mit hinein ziehen, bist ein Super Typ und nicht voreingenommen wie andere.

Dann wünsche ich Dir und Deinen lieben noch einen schönen, und vor allem sonnigen, Sonntag und hoffe, Du kannst mir noch weiter helfen.

MfG Bernd


  

Betrifft: AW: Eingabemaske ändern, Daten übertragen von: Matthias L
Geschrieben am: 08.09.2019 13:40:34

Zitat von Bernd
ich war nie unhöflich und machte keinen Stress, den haben die 3 Mitredner selbst produziert.

Nun das sehe ich absolut anders!

Zitate von Bernd
wer lesen kann ist klar im Vorteil, anscheinend scheitert es daran bei Dir, Uwe!
bist auch Du des Lesens nicht mächtig?
Schade das nicht nur HaJo hier einen "Stuss" zusammenschreibt, mittlerweile werden es immer mehr.

Da frag ich mich wer hier "Stuss" zusammenschreibt. Die Anderen oder doch Bernd selbst?
Ich weiß die Antwort! Die Antwort ist: BERND


  

Betrifft: ! von: Piet
Geschrieben am: 08.09.2019 17:18:46

Hallo Matthias und Kollegen
Hallo Bernd

vielleicht wundert ihr euch das ich mich in Forum Diskussionen nicht hineinziehen lassen will. -
Die Lösung - Fremdsteuerung oder Selbststeuerung??? - Und wer entscheidet das bitte???

Die Türkei, Libanon vorderer Orient sind wunderschöne Laender mit einer sehr alten Kultur und guten WEISHEITSLEHRERN. Mevlana, Kalil Gibran, u.v.a. -
Eine Frage von ihnen lautet - Wer ist der Herr über deine Gefühle??? - Bin ich das selbst, oder entscheiden das die anderen???

In der Türkei regen sich Dolmusfahrer, Sammeltaxi, 100x am Tag wütend auf wenn man ihnen den Weg abschneidet. Sie fühlen sich im RECHT, bedenken aber NICHT das sie dabei 100x Adernalin ins Blut ausschütten, das sie bei zu grosser Menge im Blut hoch aggressiv macht! Wenn sie Abends nach Hause kommen, Frau und Kinder anschreien. Und es macht sie auf Dauer selbst krank. Glaubt ihr die Jungs begreifen ihr eigenen Weisheitslehrer, die doch nur höflich fragen: - Entscheidest du ob du dich aufregen willst, oder löst der andere das immer automatisch aus bei dir aus?? - Sie bleiben sturheil dabei - Aber ich war im Recht!!! - Nach 10 Jahren sieht man deutliche Zeichen von Stresszittern an Armen und Beinen!

Bin ich der Herr meiner Gefühle, begreife es, kann ich ruhig bleiben. Ansonsten beschuldige ich immer den andren das er Stress verursacht!
Mehr möchte ich dazu nicht sagen. - Ausser das ich Jahre brauchte um diese Weisheit selbst zu kapieren!! - Morgen schaue ich mir den Thread an.

mfg Piet


  

Betrifft: Du bist nicht in der Position mich zu belehren! von: Matthias L
Geschrieben am: 08.09.2019 18:01:03

(das hast Du schonmal versucht!)
Du solltest immer bedenken an wen Du Deinen Beitrag richtest.

Lies Dir meine Einschätzung zu Bernd nochmal durch
und lass Politik außen vor!
Erst Denken dann Schreiben.

Das ist ein ExcelForum!


  

Betrifft: AW: Du bist nicht in der Position mich zu belehren! von: Bernd
Geschrieben am: 08.09.2019 18:41:16

Dann mache es ich,

Dein Zitat:


Nun das sehe ich absolut anders!


Auch Du bist kein Seher oder bist doch Du derjenige der eine Glaskugel zu Hause hat?

Bitte sucht Euch zum streiten eine andere Plattform und lasst mich hier in Ruhe um Hilfe suchen.

Nochmals, nicht ich habe Anfangs Sinnlos meinen Beitrag geschlossen!

Nicht ich suchte nach Ausreden und fand ein Keyword!

Lächerlich sowas, ob offen oder zu, für das kann man den Haken setzen, egal was im Betreff steht.

Ciao


  

Betrifft: Betrifft: Oh mein Gott...das war lächerlich ! von: robert
Geschrieben am: 08.09.2019 18:50:09

Ciao


  

Betrifft: So, so ... Dann mache es ich ... von: Matthias L
Geschrieben am: 08.09.2019 18:58:09

Meinen Beitrag hatte ich bewusst an Piet gerichtet, nicht an Dich!

Und genau!!
Zitat
Lächerlich sowas, ob offen oder zu
Warum regst Du Dich dann so auf?

Deinen sogenannten "Stress" hast Du doch selbst provoziert!

Auch für Dich gilt:
Erst Denken dann Schreiben.


  

Betrifft: AW:Bitte zieht mich da bitte nicht mit rein! von: robert
Geschrieben am: 08.09.2019 18:04:38

.. hat doch keiner gemacht !

Machst Du auf Missionar und Guru ?

Gruß
robert


  

Betrifft: AW: AW:Bitte zieht mich da bitte nicht mit rein! von: Bernd
Geschrieben am: 08.09.2019 18:45:44

Und Du lieber Robert,

mir ist klar das Du mein Problem aufgrund des fehlenden Wissens nicht lösen kannst, aber bitte höre in meinem Beitrag damit auf, andere, aber auch mich zu belästigen, Danke!

MfG


  

Betrifft: Offen! von: Bernd
Geschrieben am: 08.09.2019 19:48:34




  

Betrifft: Klugscheisser,was weißt denn Du von mir ? von: robert
Geschrieben am: 08.09.2019 20:07:50

..du musst erst einmal dort hin riechen, wo ich schon hin...... habe


  

Betrifft: AW: Zuerst neue Beispieldatei für Bernd von: Piet
Geschrieben am: 09.09.2019 05:11:26

Hallo Bernd

ich habe gerade gesehen das es vielee Antworten auf meine AW gibt, sie aber noch nicht gelesen. Mache ich nachher in Ruhe.

Ich freue mich über einige grundlegende technische Verbesserungen auf Grund deiner Nachricht, die dir sicher gefallen werden. Die Anzahl aus der Tabelle werden jetzt beim Start der UsrForm wie gewünscht mit geladen. Bei Übernahme der Werte in die Tabelle wird die UserForm geschlossen.

Neu ist: - wenn der Mitarbeiter seine Daten wie Team Name, Name1 use. VORHER im Eingaben Bereich C1:C15 angibt wird beim Schliessen der UserForm das Kopier Makro automatisch mit ausgelöst. Angezeigt durch MsgBox das diese Eingabe übertragen wurde. Dazu prüfe ich die Anzahl der Eingaben im Feld C1:C15 als Summe, max. 15, und gibt eine Meldung aus wenn die Anzahl zu wenig ist. Im Copy Modul findest du Const TMin = 10 - d.h., es müssen mindestens 10 Felder ausgefüllt sein!!

Basis Adressen + TMin = 10
Neu ist im Copy Modul das du dort mit Public Const MusterAdr1 = "A16", MTABereich = "C1:C15", Auswahl12 = "C21:C22", Auswahl39 = "C34:C40" sog. "Basis Adressen" findest. Was sind Basis Adressen?? - Es sind Variable die jetzt im Makro bei Range vorkommen. Du schriebst das man gerne mit der Datei spielt, und vielleicht Zeilen aendern oder erweitern will. Dann müsstest du alle Codes durchsuchen um Adressen oder Cells Indexe zu aendern. - Schau dir dazu den unteren Code Ausschnitt an. Falls ihr auf die Idee kommt Zeilen zu verschieben brauchst du nur in der Const Anweisung die Adresse für "Anzahl 1-2" zu aendern, über Cells Index wird der ganze Bereich verschoben!

Weil du dich für VBA interessierst wirst du schnell erkennen wie einfach man damit Programmieren kann, wenn exakte Adressen noch nicht feststehen. Oder man nachher was veraendern muss. Man schreibt sie mit Public = Öffentlich in ein Modul, und sie gelten für alle Module und die UserForm. - Diese Neuerungen waren mir jetzt wichtiger wie die ASWs im Thread. Bitte zuerst noch mal im Beispiel testen ob der Code Einwandfrei laeuft. Man kann sich ja versehentlich selbst Fehler einbauen.

https://www.herber.de/bbs/user/131916.xlsm -

mfg Piet

  With Worksheets("Auswertung")
  With .Range(Auswahl12)   'Anzahl 1-2  "A21"
      TextBox1.Text = .Cells(1, 3).Value
      TextBox2.Text = .Cells(2, 3).Value
  End With



  

Betrifft: AW: Zuerst neue Beispieldatei für Bernd von: Bernd
Geschrieben am: 09.09.2019 13:10:17

Hi Piet,

vielen vielen Dank für Deine Hilfe gegenüber mir. Ich werde dann morgen, mich darin zu versuchen, Deine Vorschläge umzusetzen. Vermutlich werde ich aber länger als einen Tag benötigen, aber ich arbeite drann.

Habe mir die Datei kurz angesehen und auf Funktionalität geprüft, Du hast wirklich ausgezeichnete Vorschläge eingebaut die ich auch übernehmen werde.

Ein paar Sachen haben aber auf die schnelle nicht Funktioniert, kann aber auch an meiner falschen Handhabung liegen bzw. muss ich den Code ja erst dementsprechend adaptieren.

Nur kurz, nach dem Finalen übertragen der Daten stehen in der Userform noch die eingegebenen Anzahlen, sollte ja wieder Jungfräulich sein die Userform danach.

Überdies trägt er mir die Daten nicht in die Tabelle1 ein, sondern auf dem selben Blatt, Auswertung.

Ich werde mich aber mal selber ran setzen und alles versuchen so zu gestalten wie ich bzw. wir wollten.

Dank Deiner tollen Hilfe habe ich ja genügend Ansatzpunkte und richtig gute Beschreibungen im Code selber!

Wenn alles soweit ist oder ich eventuell noch eine Frage habe melde ich mich nochmals, falls ich darf.

Vermutlich muss ich dann aber einen neuen Beitrag öffnen wo ich aber diesen hier, verlinken werde.

Um es dann auch Luc recht zu machen, werde ich als Keyword Piet im Betreff anführen!

Danke nochmals für Müh und Not und (hoffentlich) bis bald!

MfG Bernd


  

Betrifft: AW: Danke für die Rückmeldung oWt von: Piet
Geschrieben am: 09.09.2019 16:46:00

...


  

Betrifft: @ Piet! Beitrag komplett gelöst! von: Bernd
Geschrieben am: 10.09.2019 10:37:34

Lieber Piet,

aufgrund Deines echt wahnsinnig tollen VBA Codes samt Deiner Erläuterungen ist es mir nun doch
schneller, als ich gedacht hatte, gelungen, alles in die Realität umzusetzen und ich bin damit
wirklich echt total zufrieden.

Wenn es auch etwas gedauert hat, so konnte ich wieder viel Wissen mitnehmen wofür ich Dir sehr
Dankbar bin, bist ein toller Typ, dafür Daumen hoch!

Also DANKE nochmals und viele Grüße aus dem Süden Österreichs,

MfG Bernd


  

Betrifft: Mir musst du gar nichts recht machen, ... von: Luc:-?
Geschrieben am: 10.09.2019 02:22:24

…Bernd;
ich schrieb es schon, das war ein Hinweis (in deinem Interesse), weil so mancher „Schließer“ dieses Gelöst aus anderen Foren kennt und darauf reagiert, da viele Frager meinen, dass auch der Haken so etwas bedeutet (kennen die auch aus anderen Foren) und lesen nicht den Text neben der Checkbox.
Das habe ich versucht, dir anzudeuten, und was war darauf deine Reaktion…‽
Folglich hast du dir die negativen Reaktionen hier selbst zuzuschreiben! Die du nun ohne Not verärgert hast, wdn dir wohl kaum noch helfen…
Luc :-?


  

Betrifft: Offen! von: Bernd
Geschrieben am: 08.09.2019 20:35:11




  

Betrifft: AW: Persönliche Worte an Matthias von: Piet
Geschrieben am: 09.09.2019 06:11:58

Hallo Matthias

ich wollte dich nicht kraenken und auch nicht belehren. Als alter Mann finde ich es nur erstaunlich wozu ich selbst Jahre brauchte um die Weisheiten alter Meister zu verstehen.

Keiner denkt, wenn er sich aufregt, wütend über andere ist, an die Hormonauschüttung im eigenen Körper. Die schadet aber uns selbst, und nicht der Person die wir kritisieren oder tadeln! Darauf wollte ich alle höflich hinweisen. Wenn du das als beleidigend ansiehst entschuldige ich mich dafür.

mfg Piet


Beiträge aus dem Excel-Forum zum Thema "Eingabemaske ändern, Daten übertragen"