VBA Ablauf Userform1 und Datenmaske

Was von beiden ist nun übersichtlicher?
Bedenke, in der anderen Uf hast du von so Elementen ca. 30.

Hi Reinhard,
ja stimmt. hast recht. es ist übersichtlich geworden…

habe selbst freude daran :smile:

habe noch 2 kleine fehler entdeckt.
hier die letzte version. werde nun nichts mehr ändern bis ich von Dir höre…

http://www.file-upload.net/download-3730176/Milch_Di…

bis bald und besten dank. bin schon auf das nächste xls gespannt…

Schöner Abend
Sascha

Bei den anderen mache das bitte so, daß du vorne einen Präfix
davorsetzt welches Objekt das ist.
Stichwort ungarische Notation, danach einen sprechenden Namen.

Macht man schon lange nicht mehr, eigentlich sollte der Typ
egal sein, denn auch das kann sich bei der Entwicklung ändern.
Für den anfang nicht schlecht, aber später behindert die
Typenangabe .

Hallo Thomas,

da mich das sehr interessiert und speziell für VBA habe und keine Ahnung was in der heutigen Praxis so „läuft“ habe ich im Excelbrett nachgefragt.

http://www.wer-weiss-was.de/article/6603854

Kann es sein daß das was du geschriebn hast eher für VB.Net passt als für z.B. Excel VBA?

Ich will ja nur wissen welche Regeln speziell in VBA gelten, ob ich sie für meine kleinen Codes einhalte ist was anderes.

Gruß
Reinhard

hier die letzte version. werde nun nichts mehr ändern bis ich
von Dir höre…

http://www.file-upload.net/download-3730176/Milch_Di…

Hallo sascha,

http://www.uploadagent.de/show-177581-1316013584.html

schau dir das mal an und berichte.

Wenn du da auf den Button Konfiguration klickst wird nach passwortabfrage die UF Konfig eingeblendet.
Wenn die da ist kannst du in den Blättern löschen/ändern wie du willst.
Vorher auf den Button "Blattschutz aufheben klicken.

Leute ohne PW-kenntnis können nur Datensätze hinzufügen.

Wenn du in der UF Konfig auf neuenMonat klickst so hast du auf einaml das, das deine mappe jetzt mappe2011_09_14.xls heißt und eine neue Mappe erscheint die neueMappe.xls heißt.
Die neue Mappe ist in den Zeilen 3-34 leer.
Du wirst aufgefordert dafür neue Einträge in H und I vorzunehmen, Monat und jahr.

Mit der namnsvergabe mußt du mir das noch sagen wie du dir das vorstellst.

Wenn du dann die Mappe, Dateiname plus datumszusatz schließen willst kriegst du seltsame Fehlermeldungen, kümmere dich nicht drum.
Das kläre ich irgendwie (noch keinen plan habe :smile: )

Tue mir den gefallen und teste das.
Und dann noch wichtiger, fasse dein Feedback zum testen zusammen mit allen Dingen die du mir geschrieben hast.
Ich habe jetzt versucht einiges von dem was du sagtest umzusetzen, aber vieles habe ich vergessen, ging unter, nicht mehr relevant.

Jetzt wäre es wunderhübsch, denn nur du weißt was du willst daß du hier in w-w-w auf deinen Ausgangsfrage klickst, dann rechts bei den Buttons auf "fester Link gehst und dann dadurch unsre beitragsfolge
im Editor hast.

Dann löschst du da alles blabla sodaß nur noch übrigbleibt was noch zu tun ist in bezug auf die mappe die ich hiermit hochlud.
Und zeig die Liste hier.
Auch dazuschreiben wie das eigentlich abläuft mit der mappe.
Ist das ein PC der ständig läuft mit der mappe und jeder der fahrer schreibt da was rein?
Oder oder.

Gruß
Reinhard

Hallo Reinhard,

In meiner Excel-Arbeitsmappe habe ich noch folgendes dass zu ändern wäre.

Ausgangslage:

Wir haben in einem Raum einen PC installiert. Auf diesem wir NUR diese Mappe geladen sein.
Jeder Fahrer kommt am Abend nach Hause und gibt seine Daten ein. Pro Tag pro MSW, 1 Datensatz.
Der PC läuft ständig. Am letzten Tag des Monats werde ich in der Konfiguration einen neuen Monat erstellen. D.h. Die Mappe wird nur 1mal im Monat abgespeichert durch den VBA-Code
(besser wäre es nach jedem Datensatzeintrag um Datenverluste zu vermeiden.)
Da es aber immer wieder zu Falscheinträgen kommen kann muss ich diese Daten schnell korrigieren können. Deshalb wäre es schön, die Korrektur direkt in der Maske auszuführen.

Userform Datenmaske:

  • Der oberste Eintrag „Tag“ hat das Format 0.0. Kann man dies in 0 ändern, also ohne die Kommastelle?

  • Beim cmdButton „Neuer Datensatz“ kommt beim Mouseover ein Hinweisfeld mit dem Verweis: "Hilf!C1 . Kann man das wegmachen?

  • Beim cmdButton „Speichern“ wäre es besser wenn die ganze Arbeitsmappe abgespeichert wird. Vorbeugen von Datenverlust, da diese Mappe nur immer am letzten Tag des Monats gespeichert wird…

  • Habe einen cmdButton hinzugefügt. „Datensatz ändern“. Ist es möglich nach Klick das Passwort aufzurufen und damit die Datensätze in der Datenmaske direkt zu bearbeiten oder korrigieren?

  • Es sollten NUR 31 Datensätze gespeichert werden dürfen, da die Monate nicht mehr als 31 Tage haben. Jetzt kann man z.B. Datensatz 32 eingeben, dieser landet dann auf Position 1 in der Liste
    Habe dies bei MSW 2 auch so probiert. Nun Zeigt die Datenmaske keine Daten mehr an obwohl alle Daten vorhanden sind.

  • Besser wäre wenn jeder Datensatz seinen festen Platz hätte. D.h. Satz 1 Reihe 3, Satz 2 Reihe 4 usw. Weil es jetzt möglich ist, bei „Neuer Datensatz“ den Tag zu ändern.
    Es gibt zwar den Vorschlag des nächsten Datensatzes (Was super ist *gefällt mir*) diesen kann man aber ändern,
    und somit stimmt die Reihenfolge nicht mehr. Oder aber das Feld „Tag“ wird gesperrt, so dass man diesen nicht ändern kann.

Userform Auswahl_MSW:

Habe unten den Text lblkonfiguration eingefügt. Ich möchte die Userform Konfig dort laden. Habe bei Private Sub lblKonfiguration_Click() dies eingefügt:
Dim Pw
Pw = InputBox(„Passwort?“)
If Pw = „“ Then Exit Sub
If Pw = „imark“ Then
Konfig.Show 0
Else
MsgBox „falsches Passwort!!!“
End If
End Sub

Nun gibt es einen Fehler aus. Auch wenn ich Call Konfiguration() eingebe kommt der Fehler. Was mache ich falsch?

Userform Konfig:

  • Beim Klick auf Neuen Monat erstellen kommt die Abfrage: „Soll die Mappe mit Datumsstempel gespeichert werden?“ Bei Nein sollte Abbruch. Wollte dies noch nicht ändern,
    da ich nicht genau weiss ob ich das darf oder ob dies an einen speziellen Code gebunden ist.?

  • Das Abspeichern funktioniert soweit super. habe das Datumsformat und den Dateinamen angepasst. Bekomme keinen Fehler…

Hier die Mappe:

http://www.file-upload.net/download-3734847/kwmilch_…

Reinhard, vielen Dank schon mal. Du bist ein Genie!!! Ich danke allen Experten im Forum und vorallem Dir, Reinhard für die Super Arbeit die Ihr leistet. Das muss auch mal gesagt sein. Ihr seid SUPER

Liebe Grüsse Sascha

Hallo Sascha,

Wir haben in einem Raum einen PC installiert. Auf diesem wir
NUR diese Mappe geladen sein.
Jeder Fahrer kommt am Abend nach Hause und gibt seine Daten
ein. Pro Tag pro MSW, 1 Datensatz.

An jedem Tag, kein Wochenende, Feiertag?

Der PC läuft ständig. Am letzten Tag des Monats werde ich in
der Konfiguration einen neuen Monat erstellen.

Warum so umständlich? Was ist wenn du krank bist oder nicht dran denkst o.ä.
Laß das doch Vba machen.
Das prüft bei jedem Start ob schon eine mappe für den Folgemonat besteht, wenn nicht wird sie erstellet.
Bzw. prüft ab ob der Monat der Mappe dem Monat des Öffungstages der mappe entspricht, wenn nicht wird eine neue mappe erzeugt und die angezeigt.
Oder ein Code der gleich mal alle mappen für die nächsten 60 Monate erstellt.

D.h. Die Mappe
wird nur 1mal im Monat abgespeichert durch den VBA-Code
(besser wäre es nach jedem Datensatzeintrag um Datenverluste
zu vermeiden.)

Okay, mache ich.

Da es aber immer wieder zu Falscheinträgen kommen kann muss
ich diese Daten schnell korrigieren können. Deshalb wäre es
schön, die Korrektur direkt in der Maske auszuführen.

Kann ich machen aber mal eine andere idee, ich komm grad durcheinander mit den ganzen mappenversionen, da gibts ja auch paar die hast du noch gar nicht :smile:)
Jedenfalls war da so meine Idee, die fahrer können nur in der UF Datensatz etwas eingeben, in den Blättern selbst können sie nichts ändern.

Nur wer das passwort kennt nach Klick auf „ändern“ darf in den Blättern direkt ändern.
Ich für mich kann mich viel schneller und übersichtlicher direkt in den 31 Zeilen da bewegen und was ändern als mühsam Satz für Satz durchzublättern.
Aber du entscheidest wie das laufen soll.

Userform Datenmaske:

  • Der oberste Eintrag „Tag“ hat das Format 0.0. Kann man dies
    in 0 ändern, also ohne die Kommastelle?

Ja, ändere in Modul1 in der Prozedur „Fuellen“ die eine If-Schleife so ab:

 If Anz \> 0 Then
 UF.Controls("TB1").Value = Format(.Cells(Nr + 2, 1).Value, "0")
 For Spa = 2 To 11
 UF.Controls("TB" & Spa).Value = Format(.Cells(Nr + 2, Spa).Value, "#,##0.0")
 Next Spa
 End If
  • Beim cmdButton „Neuer Datensatz“ kommt beim Mouseover ein
    Hinweisfeld mit dem Verweis: "Hilf!C1 . Kann man das
    wegmachen?

Ja, ich dachte mir „Hilfe/beschreibung“ ist vielleicht sinnvoll.
klick mal im Editor auf "datenmaske sodaß du die UF siehst, dann F4 und klicke auf den cmdButton.
Dann schau in den Eigenschaften zu „ControlTipText“
Damit könntest du zu jedem Button usw beim Mouseover einen kleinen Hilfetext erscheinen lassen.

Oder aber man läßt das weg und baut einen Button „Hilfe“ ein, der dann ein großes Textfeld anzeigt wo alle Buttons usw. erläutert werden.

  • Beim cmdButton „Speichern“ wäre es besser wenn die ganze
    Arbeitsmappe abgespeichert wird. Vorbeugen von Datenverlust,
    da diese Mappe nur immer am letzten Tag des Monats gespeichert
    wird…

Okay, mache ich.

  • Habe einen cmdButton hinzugefügt. „Datensatz ändern“. Ist es
    möglich nach Klick das Passwort aufzurufen und damit die
    Datensätze in der Datenmaske direkt zu bearbeiten oder
    korrigieren?

Ja, aber siehe was ich oben schrieb und sag mir wie es ablaufen soll.

  • Es sollten NUR 31 Datensätze gespeichert werden dürfen, da
    die Monate nicht mehr als 31 Tage haben. Jetzt kann man z.B.
    Datensatz 32 eingeben, dieser landet dann auf Position 1 in
    der Liste

Okay, ich korrigiere das, pro Monat kann man nur noch soviele tage eingeben wie er Tage im Monat hat.

Habe dies bei MSW 2 auch so probiert. Nun Zeigt die Datenmaske
keine Daten mehr an obwohl alle Daten vorhanden sind.

Hab ich noch nicht geschaut nach in mSW2

  • Besser wäre wenn jeder Datensatz seinen festen Platz hätte.
    D.h. Satz 1 Reihe 3, Satz 2 Reihe 4 usw. Weil es jetzt möglich
    ist, bei „Neuer Datensatz“ den Tag zu ändern.
    Es gibt zwar den Vorschlag des nächsten Datensatzes (Was super
    ist *gefällt mir*) diesen kann man aber ändern,
    und somit stimmt die Reihenfolge nicht mehr. Oder aber das
    Feld „Tag“ wird gesperrt, so dass man diesen nicht ändern
    kann.

Füge bitte auch in Prozedur „Fuellen“ gleich nach dieser Codezeile:

UF.Controls(„TB1“).Value = Application.Max(.Range(„A1:A34“)) + 1

dies Codezeile ein:
UF.Controls(„TB1“).Enabled=False

Userform Auswahl_MSW:

Habe unten den Text lblkonfiguration eingefügt. Ich möchte die
Userform Konfig dort laden. Habe bei Private Sub
lblKonfiguration_Click() dies eingefügt:
Dim Pw
Pw = InputBox(„Passwort?“)
If Pw = „“ Then Exit Sub
If Pw = „imark“ Then
Konfig.Show 0
Else
MsgBox „falsches Passwort!!!“
End If
End Sub

Nun gibt es einen Fehler aus. Auch wenn ich Call
Konfiguration() eingebe kommt der Fehler. Was mache ich
falsch?

Das steht doch in der Fehlermeldung. Gebunden/ungebunden ist die Art wie die UF angezeigt wird, das regelst äh steuerst du mit dem Parameter/Argument nach
.Show

Zum einfachen Verständnis von gebunden, ungebunden, modal, modeless.
Entweder kannst du wenn die UF sichtbar ist im Blatt weiterarbeiten oder aber nicht, das geht erst wieder wenn die UF weg ist.

Und, das ist daraus nicht so weiteres ersichtlich wenn überhaupt, Excel läßt es nicht zu daß du durch Klick in eine gebundene UF eine ungebundene UF aufrufst. (Oder umgekehrt, grad bei Modal vergeig ich oft die 50/50 Chance *ggg*)

Ändere den oberen Teil der IF-Schleife so ab:

If Pw = "imark" Then
 Unload Auswahl\_MSW
 Konfig.Show 0
Else

Userform Konfig:

  • Beim Klick auf Neuen Monat erstellen kommt die Abfrage:
    „Soll die Mappe mit Datumsstempel gespeichert werden?“ Bei
    Nein sollte Abbruch. Wollte dies noch nicht ändern,
    da ich nicht genau weiss ob ich das darf oder ob dies an einen
    speziellen Code gebunden ist.?

Natürlich darfst du in der Mappe alles.
Bei Nein, was genau soll geschehen?
Der Code dazu steht in Modul Konfig, „neuer_monat_klick“.
Bislang wird da nur „Ja“ codiert.

  • Das Abspeichern funktioniert soweit super. habe das
    Datumsformat und den Dateinamen angepasst. Bekomme keinen
    Fehler…

Ja, dachte ich mir bzw. gehe davon aus deshalb auch meine nachfrage nach der Version. Der Code ist an sich völlig okay, läuft in XL 2002, Xl2003, XL2007 nur in meinem XL2000 nicht, da passiert das was ich da im Excelbrett nachfragte.
Also ein Bug in XL2000, der aber hier keine Rolle spielt da du kein XL 2000 benutzt.

Was ich sehr sehr gut fand/finde daß du hier einige Punkte zusammengefaßt hast.
Ohne sowas geht es nicht sonst ist der Überblick weg.
Deshalb meine Bitte an dich die bei Erfüllung unheimlich hilfreich ist/wäre.

Klicke mal Rechts auf „Artikelbaum speichern“, dann speicher den als txt oder öffne ihn mit einem Editor.
Dann schmeißt du alles raus was unwichtig ist bzw. erledigt ist usw.

So daß nur noch wie in diesem Beitrag von dir nur noch die offenen Punkte drin stehen.
Ist beidseitig hilfreich *find*
Und mit den ganzen Mappenversionen, egal, einigen wir uns als ab jetzt gültige Ausgangsbasis auf die Mappe die du grad in diesem Beitrag gezeigt hast, also
kwmilch_dispo3.xls.

Und zum Mappenhochladen, file upload ist ja okay, man muß ja immer froh sein wenn man da was findet wo man kostenlos was hochladen kann aber das Werbefenster beim Runterladen nervt mich.
Probier mal http://www.uploadagent.de/
aus.

http://www.file-upload.net/download-3734847/kwmilch_…

Ich danke allen Experten im Forum

Da sage ich doch stellvertretend mal Dankeschön

Gruß
Reinhard

Nachfrage
Hallo Sascha,

D.h. Die Mappe
wird nur 1mal im Monat abgespeichert durch den VBA-Code
(besser wäre es nach jedem Datensatzeintrag um Datenverluste
zu vermeiden.)

Okay, mache ich.

Äh, was genau soll ich machen? :smile:

Es geht um den Mappenamen. Wie soll eigentlich die Mappe heißen?
Milch_Dispo_2011_09.xls ?

Soll ich dann speichern unter
Milch_Dispo_2011_09.xls
oder
Milch_Dispo_2011_09_21.xls
oder beides?

Präfix „kw“ beim namen kam von mir, so heißen bei mir alle mappen die irgendwann wieder von der Festplatte fliegen. (kw=kann weg).
Die 3 hinten ist nur hochgezählter Index.

D.h. egal ob der tatsächliche name später so aussieht:
Milch_Dispo_2011_09.xls
oder anders.
Während der Entwicklungsphase heißt die Mappe halt
kwMilch_Dispo_2011_093.xls

D.h.2, du oder ich ändern was und laden die geänderte mappe hoch so zählen wir den Index hoch.
Das dient dazu daß wir immer die gleiche Mappenversion als Bezug haben.

  • Beim cmdButton „Speichern“ wäre es besser wenn die ganze
    Arbeitsmappe abgespeichert wird. Vorbeugen von Datenverlust,
    da diese Mappe nur immer am letzten Tag des Monats gespeichert
    wird…

Okay, mache ich.

Gleiches Namensproblem wie oben.

  • Es sollten NUR 31 Datensätze gespeichert werden dürfen, da
    die Monate nicht mehr als 31 Tage haben. Jetzt kann man z.B.
    Datensatz 32 eingeben, dieser landet dann auf Position 1 in
    der Liste

Okay, ich korrigiere das, pro Monat kann man nur noch soviele
tage eingeben wie er Tage im Monat hat.

Obwohl, ich warte erstmal ab was du zum Punkt Wochende, ggfs. auch gesetzliche Feiertage sagst.
Je nach jahr kann da schon der höchste tag im Februar der 26te sein.

Habe dies bei MSW 2 auch so probiert. Nun Zeigt die Datenmaske
keine Daten mehr an obwohl alle Daten vorhanden sind.

Hab ich noch nicht geschaut nach in mSW2

Jetzt hab ich geschaut, stimmt *gg* in MSW1 und 3 klappst und in Mws 2 nicht.
Gut, werd den Fehler schon finden.

Gruß
Reinhard

Hallo Reinhard,

ich hatte diesen Beitrag an der falschen Stelle im Board. Habe dies nun berichtigt… *gg*

Nun bekomme ich ein durcheinander mit dem ganzen.
Ich habe die Mappe ziemlich geändert…
Ich fange nochmals an, alles zu erzählen, und füge danach auch
Deine tollen Ideen als Aufgaben ein.

Ausgangslage:

Wir haben in einem Raum einen PC installiert. Auf diesem wir
NUR diese Mappe geladen sein.
Jeder Fahrer kommt am Abend nach Hause und gibt seine Daten
ein. Pro Tag pro MSW, 1 Datensatz.

An jedem Tag, kein Wochenende, Feiertag?

Nein, An jedem Tag, da unsere Firma 365 Tage im Jahr arbeitet,
auch an Sonn- und Feiertagen.
Das mit nur jeweils den heutigen Tag editieren habe ich
hinbekommen…

Der PC läuft ständig. Am letzten Tag des Monats werde ich in
der Konfiguration einen neuen Monat erstellen.

Warum so umständlich? Was ist wenn du krank bist oder nicht
dran denkst o.ä.
Laß das doch Vba machen.
Das prüft bei jedem Start ob schon eine mappe für den
Folgemonat besteht, wenn nicht wird sie erstellet.
Bzw. prüft ab ob der Monat der Mappe dem Monat des
Öffungstages der mappe entspricht, wenn nicht wird eine neue
mappe erzeugt und die angezeigt.

Ja das wäre supertoll wenn Du das hinbekommst :smile:

D.h. Die Mappe
wird nur 1mal im Monat abgespeichert durch den VBA-Code
(besser wäre es nach jedem Datensatzeintrag um Datenverluste
zu vermeiden.)

Okay, mache ich.

Also immer wenn man in der Datenmaske auf speichern klickt,
sollte es die Mappe abspeichern, also nur den save-Befehl,
keine andere Datei erzeugen. Wie wenn ich von Hand af
„Datei-Speichern“ klicke.

Da es aber immer wieder zu Falscheinträgen kommen kann muss
ich diese Daten schnell korrigieren können. Deshalb wäre es
schön, die Korrektur direkt in der Maske auszuführen.

Kann ich machen aber mal eine andere idee, ich komm grad
durcheinander mit den ganzen mappenversionen, da gibts ja auch
paar die hast du noch gar nicht :smile:)
Jedenfalls war da so meine Idee, die fahrer können nur in der
UF Datensatz etwas eingeben, in den Blättern selbst können sie
nichts ändern.

Nur wer das passwort kennt nach Klick auf „ändern“ darf in den
Blättern direkt ändern.
Ich für mich kann mich viel schneller und übersichtlicher
direkt in den 31 Zeilen da bewegen und was ändern als mühsam
Satz für Satz durchzublättern.
Aber du entscheidest wie das laufen soll.

Genau. Das habe ich bereits gelöst. Ich kann nun auf Daten
ändern klicken, dann Passwort, dann den ausgewählten Tag
editieren. Funktioniert :smile:

Userform Datenmaske:

  • Der oberste Eintrag „Tag“ hat das Format 0.0. Kann man dies
    in 0 ändern, also ohne die Kommastelle?

Ja, ändere in Modul1 in der Prozedur „Fuellen“ die eine
If-Schleife so ab:

If Anz > 0 Then
UF.Controls(„TB1“).Value = Format(.Cells(Nr + 2, 1).Value,
„0“)
For Spa = 2 To 11
UF.Controls(„TB“ & Spa).Value = Format(.Cells(Nr + 2,
Spa).Value, „#,##0.0“)
Next Spa
End If

  • Beim cmdButton „Neuer Datensatz“ kommt beim Mouseover ein
    Hinweisfeld mit dem Verweis: "Hilf!C1 . Kann man das
    wegmachen?

Ja, ich dachte mir „Hilfe/beschreibung“ ist vielleicht
sinnvoll.
klick mal im Editor auf "datenmaske sodaß du die UF siehst,
dann F4 und klicke auf den cmdButton.
Dann schau in den Eigenschaften zu „ControlTipText“
Damit könntest du zu jedem Button usw beim Mouseover einen
kleinen Hilfetext erscheinen lassen.

Oder aber man läßt das weg und baut einen Button „Hilfe“ ein,
der dann ein großes Textfeld anzeigt wo alle Buttons usw.
erläutert werden.

„ControlTipText“ habe ich gemacht. Bin mir nicht sicher ob es
eine Hilfe braucht. Ich kann da später einen „ControlTipText“
einfügen.

  • Beim cmdButton „Speichern“ wäre es besser wenn die ganze
    Arbeitsmappe abgespeichert wird. Vorbeugen von Datenverlust,
    da diese Mappe nur immer am letzten Tag des Monats gespeichert
    wird…

Okay, mache ich.

Wie oben schon beschrieben

  • Habe einen cmdButton hinzugefügt. „Datensatz ändern“. Ist es
    möglich nach Klick das Passwort aufzurufen und damit die
    Datensätze in der Datenmaske direkt zu bearbeiten oder
    korrigieren?

Ja, aber siehe was ich oben schrieb und sag mir wie es
ablaufen soll.

Habe ich bereits erledigt

  • Es sollten NUR 31 Datensätze gespeichert werden dürfen, da
    die Monate nicht mehr als 31 Tage haben. Jetzt kann man z.B.
    Datensatz 32 eingeben, dieser landet dann auf Position 1 in
    der Liste

Okay, ich korrigiere das, pro Monat kann man nur noch soviele
tage eingeben wie er Tage im Monat hat.

Ja das ist super. Ich habe das probiert in der Hilf Tabelle.
Habe aber nur mal den jetzigen Monat eingegeben. Keine Ahnung
wie ich das machen muss damit es IMMER automatisch
funktioniert!???

Habe dies bei MSW 2 auch so probiert. Nun Zeigt die Datenmaske
keine Daten mehr an obwohl alle Daten vorhanden sind.

Hab ich noch nicht geschaut nach in mSW2

  • Besser wäre wenn jeder Datensatz seinen festen Platz hätte.
    D.h. Satz 1 Reihe 3, Satz 2 Reihe 4 usw. Weil es jetzt möglich
    ist, bei „Neuer Datensatz“ den Tag zu ändern.
    Es gibt zwar den Vorschlag des nächsten Datensatzes (Was super
    ist *gefällt mir*) diesen kann man aber ändern,
    und somit stimmt die Reihenfolge nicht mehr. Oder aber das
    Feld „Tag“ wird gesperrt, so dass man diesen nicht ändern
    kann.

Füge bitte auch in Prozedur „Fuellen“ gleich nach dieser
Codezeile:

UF.Controls(„TB1“).Value = Application.Max(.Range(„A1:A34“)) +
1

dies Codezeile ein:
UF.Controls(„TB1“).Enabled=False

Habe ich irgendwie anders gelöst *gg* muss auch nachschauen,
funktioniert aber

Userform Auswahl_MSW:

Habe unten den Text lblkonfiguration eingefügt. Ich möchte die
Userform Konfig dort laden. Habe bei Private Sub
lblKonfiguration_Click() dies eingefügt:
Dim Pw
Pw = InputBox(„Passwort?“)
If Pw = „“ Then Exit Sub
If Pw = „imark“ Then
Konfig.Show 0
Else
MsgBox „falsches Passwort!!!“
End If
End Sub

Nun gibt es einen Fehler aus. Auch wenn ich Call
Konfiguration() eingebe kommt der Fehler. Was mache ich
falsch?

Das steht doch in der Fehlermeldung. Gebunden/ungebunden ist
die Art wie die UF angezeigt wird, das regelst äh steuerst du
mit dem Parameter/Argument nach
.Show

Zum einfachen Verständnis von gebunden, ungebunden, modal,
modeless.
Entweder kannst du wenn die UF sichtbar ist im Blatt
weiterarbeiten oder aber nicht, das geht erst wieder wenn die
UF weg ist.

Und, das ist daraus nicht so weiteres ersichtlich wenn
überhaupt, Excel läßt es nicht zu daß du durch Klick in eine
gebundene UF eine ungebundene UF aufrufst. (Oder umgekehrt,
grad bei Modal vergeig ich oft die 50/50 Chance *ggg*)

Ändere den oberen Teil der IF-Schleife so ab:

If Pw = „imark“ Then
Unload Auswahl_MSW
Konfig.Show 0
Else

Nun funktioniert es (glaub*)

Userform Konfig:

  • Beim Klick auf Neuen Monat erstellen kommt die Abfrage:
    „Soll die Mappe mit Datumsstempel gespeichert werden?“ Bei
    Nein sollte Abbruch. Wollte dies noch nicht ändern,
    da ich nicht genau weiss ob ich das darf oder ob dies an einen
    speziellen Code gebunden ist.?

Natürlich darfst du in der Mappe alles.
Bei Nein, was genau soll geschehen?
Der Code dazu steht in Modul Konfig, „neuer_monat_klick“.
Bislang wird da nur „Ja“ codiert.

Bei Nein sollte es zurück zur Konfig UF

  • Das Abspeichern funktioniert soweit super. habe das
    Datumsformat und den Dateinamen angepasst. Bekomme keinen
    Fehler…

Ja, dachte ich mir bzw. gehe davon aus deshalb auch meine
nachfrage nach der Version. Der Code ist an sich völlig okay,
läuft in XL 2002, Xl2003, XL2007 nur in meinem XL2000 nicht,
da passiert das was ich da im Excelbrett nachfragte.
Also ein Bug in XL2000, der aber hier keine Rolle spielt da du
kein XL 2000 benutzt.

Und mit den ganzen Mappenversionen, egal, einigen wir uns als
ab jetzt gültige Ausgangsbasis auf die Mappe die du grad in
diesem Beitrag gezeigt hast, also
kwmilch_dispo3.xls.

Die aktuellste Mappe, somit die Ausgangsbasis zu diesem
Beitrag findest Du hier:

http://www.uploadagent.de/show-177806-1316618142.html

Es geht um den Mappenamen. Wie soll eigentlich die Mappe heißen?
Milch_Dispo_2011_09.xls ?

Soll ich dann speichern unter
Milch_Dispo_2011_09.xls
oder
Milch_Dispo_2011_09_21.xls
oder beides?

Der Mappenname soll Milch_Dispo_09_2011.xls heissen (für den
Monat September)

  • Es sollten NUR 31 Datensätze gespeichert werden dürfen, da
    die Monate nicht mehr als 31 Tage haben. Jetzt kann man z.B.
    Datensatz 32 eingeben, dieser landet dann auf Position 1 in
    der Liste

Okay, ich korrigiere das, pro Monat kann man nur noch soviele
tage eingeben wie er Tage im Monat hat.
Obwohl, ich warte erstmal ab was du zum Punkt Wochende,auch esetzliche Feiertage sagst.
Je nach jahr kann da schon der höchste tag im Februar der 26te sein.
Habe dies bei MSW 2 auch so probiert. Nun Zeigt die Datenmaske
keine Daten mehr an obwohl alle Daten vorhanden sind.

Wie gesagt, wir arbeiten 365 Tage im Jahr

Ich habe da noch eine Idee. In der „neuen Mappe“ im 1. Teil
der Eingaben (Abladestellen), habe ich mal einen Button
„Zusatz1“ hinzugefügt.
Am schönsten wäre, wenn VBA im Excelblatt die grünen Zellen
ausliest und in der Datenmaske nur soviele Eingabefelder
anzeigt wie es grüne Spalten hat. Zusätzlich noch 3 solche
„Zusatz“-Buttons anzeigt.
Das Problem ist, das jeder LKW verschiedenviele Spalten hat
zum eintragen, jedoch der Fahrer im Stande sein sollte, eine
zusätzliche Spalte zu Beschriften und danach die Litermenge
dort einzugeben.
Also beim Klick auf Zusatz1 öffnet sich eine UF mit der
Abfrage des Spaltentitels (neuer Abladeort), danach schliesst
die UF und der Fahrer kann die Litermenge in der neu
generierten Spalte resp. in dieser Zelle am heutigen Tag
eingeben.
Wenn die Mappe Ende Monat neu abgespeichert und geöffnet wird,
sollte diese ZusatzSpalte aber wieder leer sein, so wie in der
Ausgangsmappe.

Ist das so möglich? Ich habe noch keine UF gezeichnet dafür,
da ich nicht weiss ob es Möglich ist…

Der 2. und 3. Teil der Datenmaske behandeln wir später…

So, nun die Zusammenfassung…

Zusammenfassung ausstehende Aufgaben Teil 1:

  • Automatisch Ende Monat abspeichern und neue Mappe mit neuem
    Monat generieren
  • Wenn in der Datenmaske auf Speichern geklickt wird, die
    Mappe Speichern
  • Pro Monat nur so viele Datensätze eingeben wie der Monat
    Tage hat
  • Mappennamen monatlich mit Milch_Dispo_09_2011.xls
    abspeichern
  • In der Datenmaske die grünen Spalten auslesen und nur diese
    zur Eingabe anzeigen. Zusätzlich 3 „Zusatz-Buttons“ anzeigen
    lassen um 3 Zusätzliche Abladeorte selber zu generieren.

uiii, grosse Sache, Sorry, aber ich glaube so sollte vieles
klar sein.

Nochmals der Link zur aktuellen Mappe:

http://www.uploadagent.de/show-177806-1316618142.html

Vielen Dank und liebe Grüsse
Sascha