Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
404to408
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
404to408
404to408
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Automatische Datenübernahme

Automatische Datenübernahme
Kirsten
Hallo Leute,
brauche mal wieder eure Hilfe...und wie immer ist das Ganze superkompliziert!
Unseren Bauleitern stellen wir zur Arbeitszeiterfassung div. Mitarbeiter eine Mappe mit insgesamt 10 Tabellen zur Verfügung. 5 Tabellen dienen derzeit der Zeiterfassung für jeweils 1 KW die anderen 5 Tabellen sind eigentlich nur verknüpfte Übersichten der jew. Woche. Die Namen der Tabellen generieren sich - dank eurer Hilfe - auf Basis einer Zelleingabe von selbst.
Ziel ist es, die Arbeitszeiten für jeweils 4 Wochen eintragen zu lassen (z.B. KW 10 bis KW 14) und als Info die vorangegangene Woche (z.B. KW 9) in der Mappe darzustellen.
Im Augenblick müssen unsere Bauleiter bei Beginn eines neuen Quartals sämtliche Daten von Hand löschen und die letzte Woche des vorangegangenen Quartals handisch wieder reinkopieren. Nicht gerade prickelnd!
Gibt es eine Möglichkeit das zu automatisieren?
Zermarter mir hier schon wieder seit zwei Tagen den Kopf und finde einfach nicht den richtigen Ansatz, geschweige denn eine Lösung.
Vielleicht hat ja jemand von euch Profis da eine Idee?
Zum besseren Verständnis habe ich mal eine Musterdatei (https://www.herber.de/bbs/user/4785.xls) hochgeladen. In dieser Datei ist aber die Vorwochen-Darstellung noch nicht berücksichtigt...na ja, eben wegen fehlendem Gedankenblitz :-(
Gruss
Kirsten

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Automatische Datenübernahme
Hans
Hallo Kirsten,
ich habe die Arbeitsmappe mit einer Lösung noch einmal auf den Server gestellt. Nach dem Start über die Zurücksetzen-Schaltfläche erscheint eine Statusmeldung über den Arbeitsfortschritt.
Die Datei:
https://www.herber.de/bbs/user/4785.xls
Die Arbeitsmappe erscheint mir etwas überlastet mit Ereignissen. Du solltest Dir überlegen, ob das Anlegen der Wochen nicht auch über eine Schaltfläche gestartet wird, da andernfalls bei jeder Zelleingabe die Events gestartet werden.
Gruss hans
AW: Automatische Datenübernahme
Kirsten
Guten Morgen Hans,
das ist ja absolut genial :-))))
Leider habe ich jetzt noch zwei - für dich sicherlich - kleine Probleme:
Wenn ich dein Makro starte, klappt alles wunderbar. Allerdings bekomme ich danach bei Eingabe eines neuen Wertes in B5 einen Laufeitfehler 1004 und es wird "Sheets(1).Range("B5").Select" angemeckert?
Die zweite Sache wäre, dass ich auch noch für die "alte Woche" die entsprechende Übersicht benötige. Lässt sich das auch noch irgendwie realisieren?
Sicherlich hast du Recht, dass die Mappe etwas überlastet ist. Leider habe ich so gut wie keine Ahnung von VBA; hole mir fast alle VBA-Ansätze aus deinem Archiv und passe sie dann entsprechend an oder finde Hilfe über das Forum. Da hier im Hause aber immer alles gaaaaanz schnell gehen muss, fehlt in der Regel immer die Zeit sich etwas näher damit zu beschäftigen.
Gruss
Kirsten
Anzeige
AW: Automatische Datenübernahme
Hans
Hallo Kirsten,
den Laufzeitfehler bekommst Du, weil das Eingabeblatt nicht mehr das erste Blatt ist. Der Befehl Range("B5").Select ist (neben anderem in der Ereignisprozedur) sowieso Unsinn, weil der Ereignis-Code ja auf Eingaben in Zelle B5 begrenzt ist.
Wenn auch das Übersichtsblatt kopiert werden soll, ändert sich der Code wie folgt:

Sub NewWeeks()
Dim iWks As Integer, iColL As Integer, iCol As Integer, iRow As Integer
Dim bln As Boolean
With Application
.ScreenUpdating = False
.EnableEvents = False
bln = .DisplayStatusBar
.DisplayStatusBar = True
End With
'On Error GoTo ERRORHANDLER
Worksheets(Worksheets.Count - 1).Copy before:=Worksheets(1)
ActiveSheet.Name = "AW Übersicht"
Worksheets(Worksheets.Count - 2).Copy before:=Worksheets(1)
ActiveSheet.Name = "AlteWoche"
Worksheets(3).Select
For iWks = 3 To 11 Step 2
Worksheets(iWks).Select False
Next iWks
iColL = Cells(17, Columns.Count).End(xlToLeft).Column
With Worksheets(3)
For iCol = 31 To iColL
Application.StatusBar = "Bearbeite Spalte " & iCol & " von " & iColL
For iRow = 18 To 116
.Cells(iRow, iCol).Select
If Selection.Interior.ColorIndex = 35 Then
Selection.ClearContents
End If
Next iRow
Next iCol
End With
ERRORHANDLER:
With Application
.EnableEvents = True
.ScreenUpdating = True
.DisplayStatusBar = bln
.StatusBar = False
End With
End Sub

gruss hans
Anzeige
AW: Automatische Datenübernahme
01.04.2004 09:48:30
Kirsten
Hallo Hans,
herzlichen Dank erst mal für den geänderten Code. Das bringt mich einen Riesenschritt weiter!
Da ich gar nicht mehr mit einer Antwort auf diesen Thread gerechnet hatte, habe ich gestern einen neuen Versuch im Forum gestartet und genau das Problem mit dem Laufzeitfehler beschrieben. Moe ist so lieb und will mir bei der Anpassung dieses Makros helfen. Wenn das noch klappt, ist die Mappe perfekt!
Also nochmals lieben Dank für deine Hilfe!
Gruss
Kirsten
AW: Automatische Datenübernahme
Kirsten
Hallo Hans,
ich bin's noch mal. Ist mir ja ein wenig unangenehm, aber gerade ist mir noch was aufgefallen...
In den Blättern, die durch dein Makro neu angelegt werden, stehen noch die ursprünglichen Verknüpfungen. Das macht keinen Sinn, wenn anschließend die neuen Daten von den Bauleitern in der letzten Woche neu eingetragen werden.
Kannst du mir bitte noch einen Tipp geben, um nur die Werte zu übertragen?
Gruss
Kirsten
Anzeige
AW: Automatische Datenübernahme
Hans
... kein Problem:
Setze unmittelbar nach dem jeweiligen Kopierbefehl der Blätter die Zeile:
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
gruss hans
AW: Automatische Datenübernahme
01.04.2004 10:16:56
Kirsten
...SUUUUPPPER! Funktioniert einwandfrei!
Nochmals lieben Dank!
Gruss
Kirsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige