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

Button belegen - Script stoppt wg Lfzfehler 13

Button belegen - Script stoppt wg Lfzfehler 13
20.04.2017 09:27:14
Krasnaplesenij
Hallo Leute,
obwohl ich kaum Kenntnisse in VBA besitze, habe ich mich da an einen großen Brocken gewagt (unter anderem aus Zeitgründen). Sonst hätte ich den Lernprozess von den Basics aus gestartet, wie es sich gehört.
Bereits vorhanden:
Ich habe mir ein Programm erstellt, dass ein per Einlagern-Button ein UserForm aufruft, in dessen Felder ich Eingaben über eine Ware mache. Durch klick auf ein Übernehmen-Feld werden alle Eingaben in die nächstfreie Zeile in Excel geschrieben (inklusive Einlagerungsdatum).
Jetzt würde ich gerne zusätzlich in der letzten beschriebenen Zeile und deren letzten Spalte ein CommandButton für ein späteres Auslagern der Ware, erscheinen lassen.
noch zu programmieren:
Jetzt habe ich nach ewigem Herumprobieren geschafft, dass zumindest ein Button platziert wird, allerdings kommt an der Stelle "Set myBtn = ActiveSheet.Buttons.Add(Cells(intLetzteVolleZeile.......) immer wieder der Fehler: "Laufzeitfehler 13 Typen unverträglich" und ich habe absolut keine Ahnung weshalb. Vielleicht kann mir da jemand helfen? (siehe Skript unten)
Als weiterer Schritt ist angedacht, dass bei dem Click auf diesen Button sich ein UserForm öffnet, über welches man 1 Passwort und ein Datum eingeben muss.
Nach Eingabe des Passwortes und der Bestätigung des aktuellen Datums, soll sich das UserForm wieder schließen, das Auslagerungsdatum in die gleiche Excelzeile in eine neue Spalte übernommen werden und die komplette Zeile in der sich der Auslagern-Button befand, soll farblich hinterlegt sein. Optimaler wäre es noch, dass der angeklickte Auslagern-Button dieser Zeile wieder verschwindet (nicht mehr verwendbar ist).
Wie ich das umsetzen will? Weiss ich noch nicht, da werde ich mir wohl noch öfter den Kopf drüber zerbrechen müssen (habe schonmal ein Buch über VBA bestellt).
Hier das Script zu der ganzen Sache, ich hoffe Ihr könnt damit etwas anfangen:
Private Sub cmdEingabe_Click()
Dim intErsteLeereZeile As Long
With ActiveSheet
intErsteLeereZeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
.Cells(intErsteLeereZeile, 1).Value = Me.txtLagerplatz.Value
.Cells(intErsteLeereZeile, 2).Value = CDate(Me.txtDatum.Value)
.Cells(intErsteLeereZeile, 3).Value = Me.txtAuftragsNr.Value
.Cells(intErsteLeereZeile, 4).Value = Me.txtRezepturNr.Text
.Cells(intErsteLeereZeile, 5).Value = Me.txtalteMaterialNr.Value
.Cells(intErsteLeereZeile, 6).Value = Me.txtneueMaterialNr.Value
End With
Dim myBtn As CommandButton
Dim intLetzteVolleZeile As Long
intLetzteVolleZeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Set myBtn = ActiveSheet.Buttons.Add(Cells(intLetzteVolleZeile, 7).Left, Cells( _
intLetzteVolleZeile, 7).Top, Cells(intLetzteVolleZeile, 7).Width, Cells(intLetzteVolleZeile, 7).Height)
With myBtn
.Name = "cmdAuslagern"
.Caption = "Auslagern"
.OnAction = "ProgrammAuslagerung"
End With
Unload frmDatenabfrage
End Sub

p.s. sorry für soviel Text ;)

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Button belegen - Script stoppt wg Lfzfehler 13
20.04.2017 09:42:46
Oberschlumpf
Hi ?
mich wundert, dass es in deinem Code nicht schon früher zu einem Fehler kommt.
Nach Versuch erscheint bei mir gleich in dieser Zeile
Dim myBtn As CommandButton

der Fehler:
Fehler beim Kompilieren
Benutzerdefinierter Typ nicht definiert
Oder kann es sein, dass du im VBE einen Verweis gesetzt hast, den ich nicht las, oder den du gar nicht erwähnt hast?
Auf jeden Fall aber funktioniert dieser Code(ausschnitt):
Sub test()
Dim myBtn As Object
Dim intLetzteVolleZeile As Long
intLetzteVolleZeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Set myBtn = ActiveSheet.Buttons.Add(Cells(intLetzteVolleZeile, 7).Left, Cells( _
intLetzteVolleZeile, 7).Top, Cells(intLetzteVolleZeile, 7).Width, Cells(intLetzteVolleZeile, 7). _
Height)
With myBtn
.Name = "cmdAuslagern"
.Caption = "Auslagern"
.OnAction = "ProgrammAuslagerung"
End With
End Sub

Kommst du jetzt weiter?
Noch n kleiner Tipp:
Ja, du hast echt sehr viel Text hinterlassen.
Manchmal geht das halt nicht anders.
Wenn du wieder mal eine Frage hast, zeig uns doch per UPLOAD bitte auch zusätzlich eine Bsp-Datei.
Ciao
Thorsten
Anzeige
AW: Button belegen - Script stoppt wg Lfzfehler 13
20.04.2017 18:08:29
Schenke
Hallo Oberschlumpf,
vielen Dank für deine schnelle Antwort! Konnte selbst leider der Arbeit wegen nicht so schnell antworten.
Also der Abschnitt funktioniert so perfekt! Nochmals vielen Dank! "Auslagern"-Button (statt einfach Schaltfläche) taucht in der neu generierten Zeile auf und bei Anklicken wird ein Formular aufgerufen.
Ich kann es immer noch nicht glauben, dass es nur an dem CommandButton gelegen hat...Wahnsinn.
Und jetzt mit "As Object" läuft es prima. Nein im VBE hatte ich keinen Verweis gesetzt, oder zumindest nicht, dass ich das wüsste. :-)
Ich hänge mal die Excel-Datei an, damit Ihr sie sehen könnt.
Userbild
Funktioniert folgendermaßen:
Bei Klick auf Einlagern kann man das abgebildete Formular ausfüllen und bei Bestätigung werden all die Daten in eine neue Zeile hineingeschrieben inklusive dem neuen "Auslagern"-Button.
Jetzt habe ich noch vor, dass beim Formular, welches nach dem Klick auf den "Auslagern"-Button aufpoppt
1) ein Auslagerungsdatum einzutragen ist (dieser Punkt ist klar)
2) in einem Feld ein Passwort einzutragen ist (unklar wie ich die Eingabemaske als Passwort deklarier und wo das Passwort festgelegt wird)
3) bei Betätigung eines "Bestätigen"-Schalters der "Auslagern"-Button in der jeweiligen Zeile verschwindet und
4) die jeweilige Zeile mit einer Hintergrundfarbe gefärbt wird z.B. gelb
Vielleicht habt Ihr eine Idee wie ich das lösen kann? Es geht mir nicht darum möglichst viel Arbeit durch andere machen zu lassen und ein vollfunktionsfähiges Script zu erhalten (obwohl es sicher leichter wäre). Mir würden schon ein paar Befehle für diese Punkte reichen, mit denen ich Arbeiten sollte.
Besten Dank im Voraus!
Viele Grüße
Krasnaplesenij
Anzeige
AW: Button belegen - Script stoppt wg Lfzfehler 13
21.04.2017 19:05:45
Krasnaplesenij
Hallo zusammen,
ich habe jetzt die Passwortprogrammierung so gut wie fertig. Nach dem Klick auf Auslagern taucht das Formular "Auslagern" auf mit voreingetragenem aktuellem Datum und einem Eingabefeld für das Passwort.
Das Formular lässt sich nicht wegklicken durch Klick auf das Kreuz, lässt sich auch nicht mit irgendwelchen anderen Tricks wegbekommen. Es sind nun mehr die Punkte verblieben, die aus diesem Script-Teil hinter den "'" zu entnehmen sind, an denen ich noch arbeiten muss. Wenn ihr Ideen habt welche Befehle ich dazu nutzen kann, dann nur zu, einfach reinschreiben.
Private Sub UserForm_Terminate()
If LCase(txtPassword.Text) = "test" Then
'den "Auslagern"-Button dieser Zeile löschen, vorheriges Abrufen und Speichern der Zeilen- und  _
Spaltendaten erforderlich, aber wie?
'das Auslagerungsdatum anstelle des urspr. "Auslagern"-Button eintragen
'die aktuelle Zeile farblich hinterlegen
Else
'Meldung, dass falsches Passwort eingegeben wurde
'nach Klick auf OK, Schließen des frmAuslagern
End If
End Sub
Viele Grüße
Krasnaplesenij
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige