Da schreibe ich doch mal: HERZLICH WILLKOMMEN !!!
Beiträge von Alina
-
-
Ehrlich?
Bei jeder neue verwendeten Version mache ich einen Ordner auf und fülle es mit allem was zu der Version gehört. Egal was. Includes kommen in einen Ordner, Scripte in einen anderen. Und ich bin sonst so, ich suche. Ordnung ist bei AutoIt und bei mir so eine Sache.
Oder habe ich das Anliegen falsch verstanden? -
zu 1) richtig
zu 2) siehe 1
zu 3) fest? flexibel? verstehe ich gerade nicht
zu 4) siehe 3
Userform? Wäre bei Excel etwas wo ich mich erst einlesen müßte. Macht man die Userform nicht, wenn sonst schon alle einwandfrei läuft?
Die Reihenfolge ist immer die gleiche. Das es noch einzelne Module und Sub's sind, dient dazu, das ich es nachvollziehen und daraus lernen kann und möchte.
PN: muss mal schauen ob ich was bei den Einstellungen verstellt habe und es somit dann bei mir liegt. Ansonsten spreche ein einfach nochmals an. -
-
Moin Stefan-Schleifchen.
Also so ganz bin ich da nicht durchgestiegen, aber ich bin auf dem Weg es zumindest mehr als grob zu verstehen.
Am liebsten hättest Du ja eine Excel-Datei mit einer richtigen Vorlage. Daran arbeite ich, aber das ich nicht ganz so schnell gemacht. Ich würde nämlich gerne noch einiges kürzen, indem ich ohne Zwischenrechnungen arbeite, aber das ist nicht ganz so leicht. Wenn nicht immer jemand dazwischen ist, wäre diese Formelzusammenfügung schon abgeschlossen. Aber nach 8-9 Stunden Arbeit habe ich nicht täglich den Antrieb mich noch vor den PC zu setzen. Da wir aber seit gestern hier "Land unter" haben und sogar Katastrophenalarm ausgesprochen wurde, komme ich eh nicht zur Arbeit, so das ich mir dafür mehr Zeit nehmen kann.
Zeile 34 und 58 im Script von Beitrag 25 habe ich mal ein ' vorgestellt. Ich finde den Sinn in den beiden Zeilen nicht. Kann es sein, das die wirklich sinnlos sind? Ich möchte nichts böses sagen, nicht das Du es falsch verstehst. Wenn die sein müssen, kannst DU mir das erklären? Danke !! -
-
Moin Stefan-Schleifchen.
Ich schaue es mir an und versuche alles zu verstehen.
Und DANKE !!! -
-
Moin Moin.
Ich habe nun erst einmal das kopieren von der "Vorlage" in die verschiedenen erstellten Monatstabellenblätter fertig gestellt und es sieht nun wie folgt aus:
Beispieldatei: ewiger_kalender_0_0_10.rarCode
Alles anzeigenDim fertig As Boolean Sub KopGelbUndBlauAusMonatsvorlageInMonate() ' ' Den gelben und blauen Bereich aus der Monatsvorlage in die Monatsblätter kopieren ' fertig = False Call KopGelbAusMonatsvorlageInMonate If fertig = True Then Call KopBlauAusMonatsvorlageInMonate End If End Sub Sub KopGelbAusMonatsvorlageInMonate() ' ' Den gelben Bereich aus der Monatsvorlage in die Monatsblätter kopieren ' Set wksKalender = ThisWorkbook.Sheets(1) ' Variable setzen auf Tabelle 1 / "Kalender" intJahr = wksKalender.Cells(1, 2) ' Jahr aus Zelle "A1" auslesen Worksheets("Januar" & " " & intJahr).Range("A1:AE5").Clear 'Datenbereich löschen Worksheets("Februar" & " " & intJahr).Range("A1:AE5").Clear Worksheets("März" & " " & intJahr).Range("A1:AE5").Clear Worksheets("April" & " " & intJahr).Range("A1:AE5").Clear Worksheets("Mai" & " " & intJahr).Range("A1:AE5").Clear Worksheets("Juni" & " " & intJahr).Range("A1:AE5").Clear Worksheets("Juli" & " " & intJahr).Range("A1:AE5").Clear Worksheets("August" & " " & intJahr).Range("A1:AE5").Clear Worksheets("September" & " " & intJahr).Range("A1:AE5").Clear Worksheets("Oktober" & " " & intJahr).Range("A1:AE5").Clear Worksheets("November" & " " & intJahr).Range("A1:AE5").Clear Worksheets("Dezember" & " " & intJahr).Range("A1:AE5").Clear Sheets("Monatsvorlage").Select ' welches Tabellenblatt wird angesprochen Range("A1:AE5").Select ' welcher Bereich des Tabellenblattes wird angesprochen Application.CutCopyMode = True Selection.Copy ' was soll passieren ; hier kopieren Sheets("Januar" & " " & intJahr).Select ' ab hier kopieren in die Monatsblätter ActiveSheet.Cells(1.1).Activate ' aktive Zelle setzen ActiveSheet.Paste Sheets("Februar" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("März" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("April" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("Mai" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("Juni" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("Juli" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("August" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("September" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("Oktober" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("November" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste Sheets("Dezember" & " " & intJahr).Select ActiveSheet.Cells(1.1).Activate ActiveSheet.Paste ActiveWindow.ScrollWorkbookTabs Position:=xlFirst Sheets("Kalender").Select ' welches auf das Tabellenblatt "Kalender" fertig = True End Sub Sub KopBlauAusMonatsvorlageInMonate() ' ' Den blauen Bereich aus der Monatsvorlage in die Monatsblätter kopieren ' Set wksKalender = ThisWorkbook.Sheets(1) ' Variable setzen auf Tabelle 1 / "Kalender" intJahr = wksKalender.Cells(1, 2) ' Jahr aus Zelle "A1" auslesen Worksheets("Januar" & " " & intJahr).Range("X8:AE30").Clear 'Datenbereich löschen Worksheets("Februar" & " " & intJahr).Range("X8:AE30").Clear Worksheets("März" & " " & intJahr).Range("X8:AE30").Clear Worksheets("April" & " " & intJahr).Range("X8:AE30").Clear Worksheets("Mai" & " " & intJahr).Range("X8:AE30").Clear Worksheets("Juni" & " " & intJahr).Range("X8:AE30").Clear Worksheets("Juli" & " " & intJahr).Range("X8:AE30").Clear Worksheets("August" & " " & intJahr).Range("X8:AE30").Clear Worksheets("September" & " " & intJahr).Range("X8:AE30").Clear Worksheets("Oktober" & " " & intJahr).Range("X8:AE30").Clear Worksheets("November" & " " & intJahr).Range("X8:AE30").Clear Worksheets("Dezember" & " " & intJahr).Range("X8:AE30").Clear Sheets("Monatsvorlage").Select ' welches Tabellenblatt wird angesprochen Range("X8:AE30").Select ' welcher Bereich des Tabellenblattes wird angesprochen Application.CutCopyMode = False Selection.Copy ' was soll passieren ; hier kopieren Sheets("Januar" & " " & intJahr).Select ' ab hier kopieren in die Monatsblätter ActiveSheet.Cells(8.24).Activate ' aktive Zelle setzen Range("X8").Select ActiveSheet.Paste Sheets("Februar" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("März" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("April" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("Mai" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("Juni" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("Juli" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("August" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("September" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("Oktober" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("November" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste Sheets("Dezember" & " " & intJahr).Select ActiveSheet.Cells(8.24).Activate Range("X8").Select ActiveSheet.Paste ActiveWindow.ScrollWorkbookTabs Position:=xlFirst Sheets("Kalender").Select ' welchsel auf das Tabellenblatt "Kalender" erledigt = False End Sub
Bei "KopGelbAusMonatsvorlageInMonate" und "KopBlauAusMonatsvorlageInMonate" musste ich folgendes machen, damit die Zellen jedes mal überschrieben werden und nicht irgendwo reinkopiert wird: in den gelben und blauen Bereich kommen später u. a. Formeln rein, aberr nicht in jede Zelle.
1. Datenbereich reinigen: Zeile 25 - 36 bzw. 96 - 1072. Zelle/n aktivieren: 45, 48, 51, ...
Es arbeitet so wie gewollt, nur ist es zu kürzen oder habe ich da einen Felher, der noch nicht ersichtlich ist?
Das Macro "KopGelbUndBlauAusMonatsvorlageInMonate" habe ich nur geschrieben, damit ich auch beide Kopoervorgänge auf einmal durchführen lassen kann.
Bin gespannt was zurück kommt, ob ich etwas verbesser kann und wie die Erklärungen dazu sind.
Um die Punkte aus Post 20 kümmere ich mich, wenn das kopieren fertig und "einwandfrei" ist.Happy-Weekend dann mal.
-
-
Erst enmal DANKE !!!
Im blauen Bereich steht in X17 keine Formel, ist das Richtig?
Im blauen Bereich X17 ist keine Formel, das ist richtig. Sind Beispielinhalte.
-
-
Moin Moin zu Runde 2
Vorab: Meine Beispielexceldatei befindet sich in der Anlage: ewiger_kalender_0_0_7.rar
Es gibt drei Tabellenblätter zu Beginn: "Kalender", "Feiertage" und "Monatsvorlage".
Auf dem Tabellenblatt "Kalender" funktioniert alles einwandfrei, Dank Stefan (Username: Schleifchen).
: Es werden die Monatsblätter erstellt und die erwünschten Daten hinein kopiert. Die beiden Lösch-Button dienen derzeitig nur zum Test.
Auf dem Tabellenblatt "Feiertage ist ebenfalls alles in Ordnung.
Auf dem Tabellenblatt "Monatsvorlage" habe ich gelbe und blaue Bereiche, die auch schon richtig in die dementsprechenden Monatsblätter kopier werden.
Nun zu den aktuellen Problemen:
1.) Wie kann ich in den Zellen B6:B der Monatsblätter das Format so ändern, das der Wochentag mit angezeigt wird?
Evtl. sogar eine Lösung, die "Grundsätzlich" diese Einstellung aus dem Quellbereich übernehmen?
2.) Wie blende ich in den Monatsblättern die Spalten D-F aus?
3.) Wenn der Kopiervorgang abgeschlossen ist, sieht man auf dem Tabellenblatt "Montasvorlage noch, was zum kopieren markiert wurde und auch dort wo es
eingefügt wurde, sind die eingefügten ausgewählt. Wie bekomme ich das weg?
4.) a) Wie kann ich die Spaltenbreite per VBA festlegen?
b) Wie kann ich die Zeilenhöhe per VBA festlegen?
5.) Wie ändere ich die Reihenfolge der Tabellenblätter? "Feiertage" und "Monatsvorlage" sollen ganz nach hinten (re.) , Kalender immer ganz vorne (li.)
Modul 3 habe ich dann doch schon alleine hin bekommen. Ist vielleicht nichts großes, aber ich bin ja mal gerade angefangen mich damit zu Beschäftigen.
Aus diesem Grund dokumentiere ich gerne auch jeden Schritt.
Ich bin dann ja mal gespannt und nachdenklich.
Zu Beitrag Nr. 8 noch kurz:....
da stehe ich bisschen auf dem Schlauf
Und mit Modul-3 ist das Problem gelöst, was ich wohl nicht richtig erklären konnte und Du somit auf dem Schlauch gestanden bist.
Ich habe das erst nur für 2018 erstellt und dann geschaut wie Du die dynamik für das Kalenderjahr geschrieben hast. Das habe ich dann auf Modul 3 umgesetzt und siehe da, es funktioniert. Sicherlich nicht die beste Lösung, aber es ist eine Anfängerinnenlösung.
Dann mal einen schönen Tag noch.
-
-
Stefan, das ist jetzt okay. Habe ich so geändert !!!
-
-
Br.......den ganzen Tag Regen...
Hier ist das wunderschönste Winterwetter, nur der Schnee fehlt. Eisig kalt, windig und wunderbare Sonnenaufgänge und Sonnenuntergänge mit hellrot leuchtenden Himmel.
-
-
Moin Stefan.
Erst einmal herzlichen Dank.
Nachdem ich die Zeilen 19 bis 67 angepasst habe, da sonst bei den Monaten die letzten Tage fehlen, funktioniert es.
Aber auch wenn es funktioniert, werde ich mich mal ran machen und versuchen alles zu verstehen.Code
Alles anzeigenOption Explicit Sub Daten_kopieren() Dim wksKalender As Worksheet Dim wksMonat As Worksheet Dim boli As Boolean Dim intJahr As Integer Dim bolSchaltjahr As Boolean Dim varKopierBereich Dim bytMonat As Byte Dim strMonatName As String Dim intEinfuegeEnde As Integer Dim arintZellen(1, 11) Set wksKalender = ThisWorkbook.Sheets(1) intJahr = wksKalender.Cells(1, 2) 'prüft Schaltjahr: bolSchaltjahr = Day(DateSerial(intJahr, 2, 29)) = 29 'Zuweisung der ArrayFelder: If bolSchaltjahr = False Then arintZellen(0, 0) = 3 ' Jan arintZellen(1, 0) = 34 ' Jan arintZellen(0, 1) = 34 ' Feb arintZellen(1, 1) = 62 ' Feb arintZellen(0, 2) = 62 ' Mär arintZellen(1, 2) = 93 ' Mär arintZellen(0, 3) = 93 ' Apr arintZellen(1, 3) = 123 ' Apr arintZellen(0, 4) = 123 ' Mai arintZellen(1, 4) = 154 ' Mai arintZellen(0, 5) = 154 ' Jun arintZellen(1, 5) = 184 ' Jun arintZellen(0, 6) = 184 ' Jul arintZellen(1, 6) = 215 ' Jul arintZellen(0, 7) = 215 ' Aug arintZellen(1, 7) = 246 ' Aug arintZellen(0, 8) = 246 ' Sep arintZellen(1, 8) = 276 ' Sep arintZellen(0, 9) = 276 ' Okt arintZellen(1, 9) = 307 ' Okt arintZellen(0, 10) = 307 ' Nov arintZellen(1, 10) = 337 ' Nov arintZellen(0, 11) = 337 ' Dez arintZellen(1, 11) = 368 ' Dez Else arintZellen(0, 0) = 3 arintZellen(1, 0) = 34 arintZellen(0, 1) = 34 arintZellen(1, 1) = 63 arintZellen(0, 2) = 63 arintZellen(1, 2) = 94 arintZellen(0, 3) = 94 arintZellen(1, 3) = 124 arintZellen(0, 4) = 124 arintZellen(1, 4) = 155 arintZellen(0, 5) = 155 arintZellen(1, 5) = 185 arintZellen(0, 6) = 185 arintZellen(1, 6) = 216 arintZellen(0, 7) = 216 arintZellen(1, 7) = 247 arintZellen(0, 8) = 247 arintZellen(1, 8) = 277 arintZellen(0, 9) = 277 arintZellen(1, 9) = 308 arintZellen(0, 10) = 308 arintZellen(1, 10) = 338 arintZellen(0, 11) = 338 arintZellen(1, 11) = 369 End If 'prüfen ob Monatsblatt vorhanden ist und neu anlegen, zu kopierenden Bereich definieren: For bytMonat = 1 To 12 Select Case bytMonat Case 1 strMonatName = "Januar" & " " & intJahr Case 2 strMonatName = "Februar" & " " & intJahr Case 3 strMonatName = "März" & " " & intJahr Case 4 strMonatName = "April" & " " & intJahr Case 5 strMonatName = "Mai" & " " & intJahr Case 6 strMonatName = "Juni" & " " & intJahr Case 7 strMonatName = "Juli" & " " & intJahr Case 8 strMonatName = "August" & " " & intJahr Case 9 strMonatName = "September" & " " & intJahr Case 10 strMonatName = "Oktober" & " " & intJahr Case 11 strMonatName = "November" & " " & intJahr Case 12 strMonatName = "Dezember" & " " & intJahr End Select ' Stop boli = False For Each wksMonat In ThisWorkbook.Worksheets If wksMonat.Name = strMonatName Then boli = True End If Next If boli = False Then Sheets.Add after:=Sheets(bytMonat + 1) Worksheets(bytMonat + 2).Name = strMonatName End If 'kopieren der monatlichen Daten nach Monatsblatt wksKalender.Activate varKopierBereich = wksKalender.Range(Cells(arintZellen(0, bytMonat - 1), 2), Cells(arintZellen(1, bytMonat - 1), 7)) Worksheets(strMonatName).Activate intEinfuegeEnde = arintZellen(1, bytMonat - 1) - arintZellen(0, bytMonat - 1) + 6 Worksheets(strMonatName).Range(Cells(7, 2), Cells(intEinfuegeEnde, 7)) = varKopierBereich Next bytMonat 'MsgBox ("Kopiervorgang ist komplett") 'kann gelöscht werden Sheets("Kalender").Select End Sub
Moin Peter.
Die Lösung von Stefan ist das was ich gesucht habe. Dein Vorschlag, wenn ich es richtig verstanden habe ist eine VBA freie Lösung, da man alles über formeln macht. Sehe ich das richtig?
Euch beiden und alles anderen na klar auch einen schönen Abend und ein schönes Wochenende. -
-
Moin Stefan.
Aktuelle Datei in der Anlage.
Außer dem Schaltjahrproblem bin ich gut vor.
Das mit dem kopieren von anderen Bereichen bekomme ich auch schon hin. Habe eine Testdatei und probiere viel aus.
Beim "Formeln auch per Vba definieren", sagt mein Kopf: "Ja, sieht logisch aus", aber die Umsetzung, da komme ich bestimmt auf Dich zurück.
Bei der beigefügten Datei habe ich drei Buttons. Eines das die jeweiligen Kalenderblätter (Janauar - Dezember) erstellt und dann einen um die Kalenderblätter aus 2018 zu löschen und einen um die Kalenderblätter aus 2020 (Schaltjahr zu löschen. Das habe ich nur gemacht, weil ich dazu händisch keine Lust habe. Die sind später dann nicht mehr da.
So, bin mal gespannt wie das Schaltjahrproblem zu löschen ist. Ich habe mir das VBA von Dir ausgedruckt und werde jetzt mit einem Cappuccino auf dem Sofa mir das mal, unter zuhilfenahme des Buches "VBA mit Excel" von Bernd Held, in den Kopf "drücken".
Und Montag wird Beleg ausgefüllt, denn die € 49,90 sind schließlich "beruflich notwendige Bildungskosten" und die trägt mal brav mein Arbeitgeber, womit er noch nie Probleme hatte.
Stand: 2018/02/17 ewiger_kalender_0_0_3.rar -
-
Hallo.
1.)
Habe gerade festgestellt, das das VBA an Schaltjahren nicht richtig arbeitet.
2.)
Ich wollte folgende Zeile wie folgt ändern:
Alt: Worksheets(strMonatName).Range("B1:G" & intEinfuegeEnde) = varKopierBereich
Neu: Worksheets(strMonatName).Range("B7:G" & intEinfuegeEnde) = varKopierBereich
Aber das geht nicht, da er dann nicht alle Tage es Monats kopier. Wo denke ich da falsch?
Das zweite Problem machen wir später. Okay? -
-
Nutzt du dafür OpenSource (wenn ja was) oder den Platzhirsch???
Wir haben auf jedem PC eine Adobe Vollversion. Da mein Laptop, Netbook, usw. Berufsmaterial ist, verwende ich den "Platzhisch" auch zuhause.
-
Moin Schleifchen.
Erst einmal: MEIN DANK !!!
Frage:Beim ersten Start soll das ganze Jahr abgearbeitet werden? Wenn das erfolgt ist werden täglich nur noch die Änderungen in die bereits vorhandenen Tabellenblätter ergänzt? Ist das Richtig so?Antwort: dieses ist richtig so.
Frage:
Wie soll es mehrjährig gehändelt werden, stehen Januar 2019 und Januar 2020 auf einem Tabellenblatt?
Antwort: Ich habe die Lösung in den VBA Code so geändert und hoffe das es so richtig ist und Du nichts da gegen hast:
Case 1
strMonatName = "Januar" & " " & intJahr
varKopierBereich = wksKalender.Range("B3:G" & 33)
Deinen Dateianhang konnte ich leider nicht öffnen, aber ich habe es mit C&P eingefügt bekommen.
Ich habe bei "'kopieren der monatlichen Daten nach Monatsblatt" die Position, wo die Daten hinkopiert werden sollen geändert. Dies ergibt sich aus dem 2. Schritt der wie folgt aussieht:
Ich habe das Tabellenblatt Monatsvorlage mal erstellt. Auf dem sind drei farbige Felder. In den kommen später Formel. Diese Felder sollen auf jedes erstellte Monatsblatt kopiert werden, das zu dem intjahr gehört. Das ist wichtig, wenn später mehrer Jahre in der Exceltdatei sind, da zum JahresbeginnÄnderungen dann nur in der Vorlage zu machen sind.
-
-
Und mal noch ein Hinweis:
Gleich an die Aufbewahrungspflicht der Dokumente denken. Es empfiehlt sich Dokumente gleich in PDF zu überführen und diese in einer Datenbank (BLOB-Feld) zu speichern. Name, Belegnummer, Datum, Leistung (z.B. Artikel-Nr.) und andere relevante Daten als Tags speichern und indizieren. Dann lassen sich Belege google-like ruck-zuck auffinden.
Ja, wir nutzen fast ausschließlich PDF-Dateien bei Formularen. Erstellen kann man ausfüllbare PDF Vorlagen sehr schnell und man kann die Felder einer PDF Datei selber bestimmen, damit es mit AutoIt besser angesprochen werden kann. Und noch ein Vorteil, man kann sehr gut der von BugFix angesprochene Aufbewahrungspflicht nachkommen. Bei uns werden die Formular nach dem ausfüllen durch drücken eines "Druckbutton" nicht nur ausgedruckt, sondern auch gleichzeitig digital wegsortiert. Die Vorteile liegen ganz klar bei PDF. Auch die ganzen Automatisierungen die ein PDF Formular bringt, sprechen für sich. Auch die Tags, die BugFix angesprochen hat, können automatisiert bei PDF Formularen gespeichert werden.
Das erstellen der PDF ist im Grunde nur eine weitere Zeile, wenn du Word offen hast (_Word_DocSaveAs).
Aber doch nur, wenn man auf den Luxus wie gerade von mir oben genannt verzichten möchte. Oder?
-
Moin BugFix & Schleifchen.
Also ich belese mich gerade erst mit VBA und wie einige ja wissen, ich meine Zeit 24 Tag schon viel zu kurz. Aber ich glaube das könnte ich irgendwie verstehen.
Ich hänge eine Datei ran. Es die die Datei, so wie ich sie selber zugesendet bekomme habe. Ich habe dann schon mal die Sonntage, Feiertage farblich bedingt formatiert und die Feiertage, die nicht auf einen Sonntag fallen. Dieses ist später nämlich wichtig zu den Berechnungen, die dann in die Folgespalten H bis U entstehen werden.
Die Daten sollen nun in Monate ausgeteilt werden und von der Logik kann ich BugFix etwas folgen. Aber ich möchte später nur im Kalender tagesaktuelle Daten eingeben, um auf den Monatsblättern dann einen besseren Übersicht zu bekommen und nur monatsspezielle Berechnungen nur noch in die Tabellenblätter einfügen. Aber hier werde ich dann auch Vorlagen machen und die dann in die Tabellen kopieren, wenn es mit den Monaten funktioniert.
Sollte dann ja das gleiche Prizip sein, nur das die Tabellenblätter Januar bis Dezember dann ja bereits erstellt ist. Das wollte ich auch mit VBA mal sehen ob das geht. Wenn ich das richtig bis jetzt gelesen habe, ist es möglich zu sagen, das wenn in Spalte B3:B368 der Monats ein Januar ist, dann kopiere es, in meinem Fall in das Tabellenblatt "Januar". So würde es auch beachtet werden, wenn es sich um ein Schaltjahr handelt. Habe gerade noch in B368 das Feld mit einer Formel hinterlegt, damit es beim Schaltjahr den 31. Dezember auch anzeigt und nicht den 01. des Folgejahres.
Alles unwichtige habe ich mal aus dem Kalender genommen. Wird dann meine Beispiel-Datei für den Ordner: "Grundlagen".
Wenn der dynamische Kalender fertig ist, nimmt der mir sehr sehr viel Berechnungen ab, die immer und immer wieder die gleichen sind. Und genau dafürist Excel ja da. Noch immer steht bei uns auf den Schreibtischen Taschenrechner, außer auf meinem, da läuft der fast immer auf einen der Monitore. Aber ich brauche Zeitersparnis und dieser Kalender, so er denn fertig ist spart mir wöchentlich dann ca. 2-3 Stunden und am Nonatsanfang gut 6 Stunden. Zeit, die ich mir dann nämlich an Überstunden sparen kann. Das Konto ist eh schon wieder überfüllt (Maximum + 72% Stand gestern).
So, es ist schon wieder mitten in der Nacht. Ich versuche noch mal eineinhalb Stunden zu schlafen. Euch einen schönen Donnerstag und hoffentlich bald mal einen richtigen Winter.Download / Anhang: DynKan.rar
-
-
Moin-Moin.
Ich habe auf dem Tabellenblatt "Kalender" in B1:G367 Daten stehen die ich auf die Monatsblätter (Januar, Februar, ...) aufteilen möchte.
Erstes Problem, wie verteile ich es automatisch in die jeweiligen Monatstabellenblätter und muss ich die Tabellenblätter händisch erstellen oder geht soetwas auch via VBA?
Zweites Problem ist der Februar, da dieser ja nicht immer die gleiche Tageszahl hat.
In B1:B367 (kein Schaltjahr) stehen das Datum vom 01.01.2018 - 31.12.2018, wobei das Jahr dynamisch ist.
Ich habe mir ein dickes VBA gekauft von Bernd Held, aber da brauche ich einige Tage (ppar Wochen, um erst einmal über das große den Überblick zu bekommen.
Hat von Euch jemand eine Lösung oder hatte schon einmal ein solches Problem und kann mir helfen?
Lieben Dank und Moin-Moin. -
-
Moin Muecke.
Ich habe eigentlich nicht viel o. g. zuzufügen.
Wenn Du einen guten Chef hast, so wie meiner, dann zahlt er mal einen Obolus (?) auf das Spendenkonto.
Muss ja nicht gleich ein Hunderter sein, aber wenn er etwas davon hat, darf er das gerne dankend überweisen. -