Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen

Probleme beim Übernehmen von Daten in UserForm


Betrifft: Probleme beim Übernehmen von Daten in UserForm von: Markus
Geschrieben am: 23.01.2018 11:45:49

Hallo
beim Initialsieren einer Userform übernehme ich aus 2 verbundenen Zellen
(C40 mit D40) mit dem Namen: nmtxt211 Daten.
Das funktioniert auch bestens.
Aber ...
nach der Übernahme wandelt mir Excel die Formel: =Runden(nmtxt101*nmtxt102/5*3.1415;2)
in effektive Zahlen um.

Excel zerstört also die Formel im Feld nmtxt211.
Für eine Hilfe wäre ich sehr dankbar.
Markus

  

Betrifft: AW: Probleme beim Übernehmen von Daten in UserForm von: EtoPHG
Geschrieben am: 23.01.2018 11:49:48

Hallo Markus,

Völlig unvollständige Fehlerbeschreibung. Sollen wir das Nachbauen, oder stellst du bitte eine Beispielmappe mit diesem Fehlverhalten ins Forum?

Gruess Hansueli


  

Betrifft: AW: Probleme beim Übernehmen von Daten in UserForm von: Markus
Geschrieben am: 23.01.2018 12:20:11

Sorry,
ich legte die Datei auf den falschen Thread.
Hier nochmals die Datei, die nach starten des Userforms die Formel "kaputt" macht.
Gruss
Markus

https://www.herber.de/bbs/user/119188.xls


  

Betrifft: AW: Probleme beim Übernehmen von Daten in UserForm von: yummi
Geschrieben am: 23.01.2018 12:44:32

Hallo Markus,

hier:

Private Sub txt211_Change()
    'nach Änderung, Feld füllen
    Range("nmtxt211") = txt211
End Sub

überschreibst du die Formel mit einem fixen Wert.
Du musst doch nur die geänderten Werte zurückschreiben und die Zellen mit den Formeln bleiben unverändert.
Wieso lässt Du über dein Formular Daten eingeben, die Du auf der anderen Seite im Sheet berechnest, dass kann nicht klappen.
Mein Tip markiere die die veränderbaren Werte mit einer anderen Farbe als die berechneten und nimm dann nur die veränderbaren Werte in dein Formular auf.

Gruß
yummi


  

Betrifft: AW: Probleme beim Übernehmen von Daten in UserForm von: Markus
Geschrieben am: 23.01.2018 13:07:55

Hallo Yummi
ich wollte folgendes erreichen:
Ich fülle die beiden Felder mit den Namen nmtxt102 und nmtxt101.
Sobald diese gefüllt sind, soll im Userform der berechnete Wert angezeigt werden, die Formel soll aber in der Tabelle unberührt bleiben!
D.h. nach jedem Ändern der Felder nmtxt102 und nmtxt101 soll der Wert des Feldes txt211 aktualsiert werden mit der Formel die im txt211 steht.
Die ganze Idee ist, dass der User das Feld im Form überschreibt und nur dann, soll in der Tabelle der Wert der Eingabe überschrieben werden.
Gruss
Markus


  

Betrifft: AW: Probleme beim Übernehmen von Daten in UserForm von: yummi
Geschrieben am: 23.01.2018 13:29:01

Hallo Markus,

wenn ich dich richtig verstehe machst du ein Userform auf um dort Daten zu aktualisieren, die Du im Sheet eingibst.
Normalerweise nutzt man eine Userform um dort Daten zu ändern, die man dann auf das Sheet zurückschreibt.

Gruß
yummi


  

Betrifft: AW: Probleme beim Übernehmen von Daten in UserForm von: Markus
Geschrieben am: 23.01.2018 13:33:53

Hallo Yummi
ja, das weiss ich natürlich.
Aber der User, für den ich diese Tabelle mache, möchte den errechneten Wert im UserForm schon sehen, sobald die beiden Felder im Form gefüllt sind.
Ich könnte, sofern ich den Code habe, auch gleich eine Formel im Userform einbauen, und nach dem aktualisieren der beiden Felder im Form "changen".
Gruss
Markus


  

Betrifft: AW: Probleme beim Übernehmen von Daten in UserForm von: EtoPHG
Geschrieben am: 24.01.2018 09:58:26

Hallo Markus,

Dein Konzept, alles über eine Userform abzuwickeln, kann ich nicht ganz nachvollziehen, denn das Blatt selbst ist ja schon so gestaltet, dass die Eingaben auch dort direkt erfolgen könnten. Da wäre es wohl sinnvoller, nur die Eingabe-Zelle freizugeben und den Rest per Blattschutz zu sperren. Das würde wesentlich weniger oder ggf. gar keinen Programmieraufwand erfordern.

In einem Textfeld kann keine Formel hinterlegt werden! Dafür musst du schon selber, programmatisch, sorgen.
Setzte die Eigenschaft Locked = True für Textfelder, welche keiner Eingabe bedürfen. Wenn alle für eine Berechnung nötigen 'Eingabe'-Textfelder gefüllt sind, rechne das Resultat aus und setze dann den Text der 'Errechneten'-Textfelder auf diesese. Oder lass Excel im Blatt rechnen und setzte die Textfelder auf die errechneten Zell-Inhalte.

Gruess Hansueli


Beiträge aus dem Excel-Forum zum Thema "Probleme beim Übernehmen von Daten in UserForm"