Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1800to1804
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

Beispiel Code Userform

Beispiel Code Userform
02.01.2021 11:57:05
leito
Hallo, zu unten angeführten Code haben sich folgende Probleme ergeben:
- CSng(dlgxxx.edtMenge.Value wird immer als Währung ausgeführt (Spalte5)
- die objektsteuerungen sind 2 verschiedene, werden als eine behandelt. ich möchte sowohl das objekt name und das andere
objekt seperat auswählen
Vielen Dank für eure Hilfe!
Private Sub btnOK_Click()
'Eingaben der Schaltflächen in die Arbeitsmappe übernehmen
Dim last As Integer
last = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
ActiveSheet.Cells(last, 1).Value = CDate(dlgxxx.edtDatum.Value)
ActiveSheet.Cells(last, 6).Value = CCur(dlgxxx.edtBetrag.Value)
ActiveSheet.Cells(last, 5).Value = CSng(dlgxxx.edtMenge.Value)
If objektbuttonname1.Value = True Then Cells(last, 2).Value = "Name1"
If objektbuttonname2.Value = True Then Cells(last, 2).Value = "Name2"
If objektbutton1.Value = True Then Cells(last, 4).Value = "PMK"
If objektbutton2.Value = True Then Cells(last, 4).Value = "PKM"
If objektbutton3.Value = True Then Cells(last, 4).Value = "PKG"

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Du gibst nie Rückmeldungen ...
02.01.2021 12:09:01
Matthias
... also sollte man Dir auch nicht mehr helfen.
AW: Du gibst nie Rückmeldungen ...
02.01.2021 12:25:55
leito
Sorry, aber ich habe jetzt versucht einen Code zu programmieren.
Das ist in meinen Augen eine Rückmeldung.
Mit vielen Rückmeldungen kann ich nichts anfangen, da ich sie nicht verstehe.
Den Vorwurf ich sollte mich im Google erkundigen, kann ich nicht nachvollziehen, da meine Fragen daraus resultieren weil ich im Netz nichts gefunden habe, dass ich auch verstanden hätte.
Ich glaube mein Problem liegt darin, dass ich einfach zu Laienhaft frage und deshalb keine Antworten bzw. nur polemische Antworten erhalte.
Wenn Ihr der Meinung seid, mir nicht mehr zu helfen, so muss ich das auch zur Kenntnis nehmen. Es tut mir leid, dass ich eure Zeit in Anspruch genommen habe.
Mfg
Leito
Anzeige
Diesen Vorwurf habe ich nie gemacht!
02.01.2021 12:43:46
Matthias
Hallo leito,
Zitat:
Den Vorwurf ich sollte mich im Google erkundigen, kann ich nicht nachvollziehen
Diesen Vorwurf habe ich Dir nie gemacht!
Wenn es Dir zu viel ist Antworten zu lesen und dann demjenigen eine Rückmeldung zu geben
der Dir geantwortet hat, ob Du mit dieser Antwort nun was anfangen kannst oder nicht kannst Du ja in Deiner Rückmeldung schreiben. Aber überhaupt nicht auf angebotene Hilfe zu reagieren ist
ein Schlag ins Gesicht eines jeden Helfers.
Zitat:
Wenn Ihr der Meinung seid, mir nicht mehr zu helfen ...
Das ist ein weiterer Irrtum! Wenn man das nicht will, dann bekommst Du auch keine Antwort.
Schließlich ist das Forum genau dafür gedacht Anderen zu helfen.
Gruß ...
Anzeige
AW: Diesen Vorwurf habe ich nie gemacht!
02.01.2021 12:55:10
leito
Sorry Matthias, wollte dich nicht verärgern.
Es tut mir leid!
Mfg
AW: Beispiel Code Userform
02.01.2021 16:12:29
Matthias
Moin!
Zu 1. Ich weiß nicht, genau was du da für Ausgangswerte hast und was als Zielwert rauskommen soll. Wenn es Mengen sind (also ohne Komma), dann probiere mal an Stelle von Csng Clng. Damit wird dein Eintrag in eine Long Variable konvertiert.
zu 2. Beschreib mal, wie du deine Auswahl vornehmen wolltest. DA du jetzt nur einen OK BUtton zu haben scheinst, kannst du das wohl nicht trennen. Ggf. 2 Button machen. EInen für den NAmen ud einen für die Button. Alternativ kannst du auch bei jedem Objekt eine Ereignisprozedur anlegen. Bspw. eine Exit ode Cahnge Ereignis. Wenn du einen BUtton auswählst und ihn änderst oder verlässt, wird der Code ausgeführt.
VG
Anzeige
AW: Beispiel Code Userform
03.01.2021 11:53:53
fcs
Hallo Leito,
je besser du deine Fragen vorbereitest, desto besser kann dir geholfen werden.
In vielen Fällen ist eine kleine Beispieldatei hilfreich - ggf. mit anonymisierten persönlichen oder sensiblen Daten. Dadurch vermeidest du ggf. ein unnötiges hin und her von Fragen und Nachbesserungen.

Bedenke:
Du bekommst hier Hilfe für umme, die von den Helfern in der Freizeit oder in "Leerlauf-Zeiten" geleistet wird.
Es ist auch meist erforderlich, dass die Eingaben geprüft werden, bevor sie ins Tabellenblatt eingetragen werden.
Musseingaben und/oder Datentypen
Bezüglich der Anzeige von Menge als Währung:
Prüfe mal das Datenformat der Zellen in Spalte E des Tabellenblattes. Evtl. ist da ja irgendwas als Währung formatiert. Excel macht manchmal seltame/unerwüschte Sachen - mir ist aber nicht bekannt, dass Single- oder Double-Zahlen automatisch in Währung umgewandelt werden.
Noch ein paar Hinweise:
  • Deklariere Variablen für Zeilen als Long.
    In Grenzfällen kann es passieren, dass in der neuesten Excelversion der Zahlenbereich für Integer-Zahlen überschritten wird.

  • Verwende bei der Umwandlung von Text in Zahlen CDbl und nicht CSng.
    CSng produziert öfters unerwünschte Nachkommastellen.

  • LG
    Franz
    Private Sub btnOK_Click()
    'Eingaben der Schaltflächen in die Arbeitsmappe übernehmen
    Dim last As Long             'Long statt Integer
    Dim msgText As String
    'Eingaben auf Vollständigkeit und korrekten Datentyp prüfen
    If Not IsDate(Me.edtDatum) Then msgText = msgText & vbLf & "Datum ist kein gültiger  _
    Datumswert"
    If Not IsNumeric(Me.edtBetrag) Then msgText = msgText & vbLf & "Betrag ist keine Zahl"
    If Not IsNumeric(Me.edtMenge) Then msgText = msgText & vbLf & "Menge ist keine Zahl"
    If Me.objektbuttonname1 = False And Me.objektbuttonname2 = False Then _
    msgText = msgText & vbLf & "Objekt-Name ist nicht ausgewählt"
    If Me.objektbutton1 = False And Me.objektbutton2 = False And Me.objektbutton3 = False Then  _
    _
    msgText = msgText & vbLf & "Objekt-Option ist nicht ausgewählt"
    If msgText  "" Then
    MsgBox "Eingaben sind unvollständig oder ungültig" & msgText, vbInformation + vbOKOnly,  _
    _
    "Überprüfung der Eingaben"
    Exit Sub
    End If
    last = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
    ActiveSheet.Cells(last, 1).Value = CDate(dlgxxx.edtDatum.Value)
    ActiveSheet.Cells(last, 6).Value = CCur(dlgxxx.edtBetrag.Value)
    ActiveSheet.Cells(last, 5).Value = CDbl(dlgxxx.edtMenge.Value)          'CDbl statt CSng
    If objektbuttonname1.Value = True Then Cells(last, 2).Value = "Name1"
    If objektbuttonname2.Value = True Then Cells(last, 2).Value = "Name2"
    If objektbutton1.Value = True Then Cells(last, 4).Value = "PMK"
    If objektbutton2.Value = True Then Cells(last, 4).Value = "PKM"
    If objektbutton3.Value = True Then Cells(last, 4).Value = "PKG"
    End Sub
    

    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige