2.6k Aufrufe
Gefragt in Tabellenkalkulation von julicolonia Einsteiger_in (73 Punkte)
Hallo Ihr Lieben!

Ich bräuchte mal wieder Eure Hilfe...

Ich habe für unser Haus einen Dienstplan gestaltet. Gedacht ist, dass für jede Abteilung in einem Excel-Dokument pro Tabellenblatt der Wochendienstplan erscheint. Die Gut/-Minusstunden sollen dann immer automatisch in das nächste Tabellenbaltt/in die nächste Woche übertragen werden. Es muss doch bestimmt eine Möglichkeit geben, nicht 52 mal den Wert in das nächste Tabellenblatt zu übertragen, oder?

Vielen Dank im Voraus

JuliColonia

6 Antworten

0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi colonia ^^

vielleicht in der art :-))

gruss nighty

einzufuegen
alt+f11/projektexplorer/DeineArbeitsMappe

in diesem beispiel wird der wert von der vorgehenden tabelle zelle a1 bei selectierung einer tabelle uebernommen

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.EnableEvents = False
If Sh.Index > 1 Then
Sh.Cells(1, 1) = Worksheets(Sh.Index - 1).Cells(1, 1)
End If
Application.EnableEvents = True
End Sub


Ich akzeptiere die nutzungsbedingungen nicht ,da sie diktatorisch sind und setze das haeckchen nur um dem user zu helfen
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo nighy,

meine PN hast Du erhalten?

Gruß Hajo
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
Hallo JuliColonia ^^

das ist wohl nix halbes und nix ganzes was ich da gemacht habe,ich werde mir mal intensiver gedanken darueber machen

gruss nighty

@hajo
pn ist angekommen :-))
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
Hallo JuliColonia ^^

So gefaellt es mir schon besser :-)

gruss nighty

Vorraussetzung 53 Worksheets die anstatt namentlich numeriche namen vorweisen

1/2/3/4 usw. mit einem aufsteigenden worksheetindex vorrausgesetzt

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.EnableEvents = False
If Sh.Index > 1 Then
If EKalenderWoche(Date) = Sh.Index And Sh.Cells(1, 1) = "" Then
Sh.Cells(1, 1) = Worksheets(Sh.Index - 1).Cells(1, 1)
End If
End If
Application.EnableEvents = True
End Sub

Function EKalenderWoche(Edatum As Date) As Integer
EKalenderWoche = (Edatum - DateSerial(Year(Edatum + (8 - Weekday(d)) Mod 7 - 3), 1, 1) - 3 + (Weekday(DateSerial(Year(Edatum + (8 - Weekday(d)) Mod 7 - 3), 1, 1)) + 1) Mod 7) \ 7 + 1
End Function
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
Hallo JuliColonia ^^

das makro ist einzufuegen
alt+f11/projektexplorer/deinearbeitsmappe

die funktion
alt+f11/projektexplorer/allgemeinesmodul

gruss nighty
0 Punkte
Beantwortet von julicolonia Einsteiger_in (73 Punkte)
Hallo Nighty,

vielen lieben Dank, dass Du Dir so viele Gedanken gemacht hast und somit mein Problem lösen konntest.

Super :-)

Lieben Gruß

Juli Colonia
...