Nach Datenübernahme autom. aktuelles Datum

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
InputBox MsgBox
Bild

Betrifft: Nach Datenübernahme autom. aktuelles Datum
von: Erwin
Geschrieben am: 20.04.2005 20:11:16
Hallo Excel-Freunde,
ich bekomme per e-Mail mehrere Excel-Dateien. Die Daten kopiere ich und übernehme sie alle in eine zentrale Datei. Mithilfe dieses Forums habe ich mir folgende Prozedur zusammengebastelt:


Private Sub cmdDatenuebernahme_Click()
Dim daten As Object
Dim ziel As Worksheet
Dim lastRow As Long
kw = InputBox("Bitte Kennwort für Datenübernahme eingeben", "Datenübertragungsberechtigung")
Set daten = ActiveWorkbook.Sheets("Gesamtdaten")
Set ziel = Workbooks("ZenErfRun").Sheets("Gesamtdaten")
If kw = "xxx" Then
lastRow = ziel.Range("A65536").End(xlUp).Row + 1 'erste freie Zeile in ziel
daten.Range(daten.Cells(3, 1), daten.Cells(daten.Cells(65536, 1).End(xlUp).Row, 33)).Copy
ziel.Cells(lastRow, 1).PasteSpecial xlPasteValues
lastRow = ziel.Range("A65536").End(xlUp).Row + 1
Application.CutCopyMode = False
Else
MsgBox "Es wurde kein oder ein falsches Kennwort eingegeben!", , "Datenübertragungsberechtigung"
Exit Sub
End If
End Sub

Das klappt auch wunderbar. Jetzt möchte ich aber zusätzlich, wenn die Datenübernahme in die zentrale Datei "ZenErfRun" erfolgt ist, in Spalte AH für alle übernommenen Datensätze das jeweils aktuelle Datum automatisch schreiben lassen für ein späteres Filtern nach Datum. Das Datum wird mit den Quelldaten aus den E-Mails nicht mitgeschickt, weil ich immer das Datum brauche, wenn ich die Daten mit der Schaltfläche "cmdDatenuebernahme_Click" übernehme.
Es können zwischen 5 und 50 Datensätze pro E-Mail übersandt werden.
Ich bin mit meiner Weisheit jetzt aber am Ende. Wer hat eine Lösung, wie ich an Ende eines jeden übertragen Datensatzes das akt. Datum autom. setzen kann.
Bin für jede Antwort dankbar
Schöne Grüße
Erwin
Bild

Betrifft: AW: Nach Datenübernahme autom. aktuelles Datum
von: Harry
Geschrieben am: 20.04.2005 20:33:32
Hallo Erwin,
mit dem Copy-Befehl müssten mit den Zellinhalten auch alle Formate (auch Datumsformate) übernommen werden:

Private Sub cmdDatenuebernahme_Click()
Dim daten As Object
Dim ziel As Worksheet
Dim lastRow As Long
kw = InputBox("Bitte Kennwort für Datenübernahme eingeben", "Datenübertragungsberechtigung")
Set daten = ActiveWorkbook.Sheets("Gesamtdaten")
Set ziel = Workbooks("ZenErfRun").Sheets("Gesamtdaten")
If kw = "xxx" Then
lastRow = ziel.Range("A65536").End(xlUp).Row + 1 'erste freie Zeile in ziel
'hier der Unterschied: "End(xlUp).Row, 34)" statt "End(xlUp).Row, 33)"
daten.Range(daten.Cells(3, 1), daten.Cells(daten.Cells(65536, 1).End(xlUp).Row, 34)).Copy
ziel.Cells(lastRow, 1).PasteSpecial xlPasteValues
lastRow = ziel.Range("A65536").End(xlUp).Row + 1
Application.CutCopyMode = False
Else
MsgBox "Es wurde kein oder ein falsches Kennwort eingegeben!", , "Datenübertragungsberechtigung"
Exit Sub
End If
End Sub

Hast du es damit schon probiert?
Gruß
Harry
Bild

Betrifft: AW: Nach Datenübernahme autom. aktuelles Datum
von: Erwin
Geschrieben am: 20.04.2005 21:03:15
Hallo Harry,
das wäre schon richtig, aber ich habe nirgendwo ein Datum zum kopieren. Ich muss es quasi extra zu den "importierten" Daten dazu schreiben. D.h., ich übernehme die Daten per Schaltfläche "cmdDatenuebernahme_Click" und wenn sie dann in der zentralen Datei eingefügt sind, soll das akt. Datum in Spalte 34 hinter jedem eingefügten Datensatz zusätzlich gesetzt werden. Die Prozedur müsste sich praktisch merken, wie viele Datensätze sie kopiert und eingefügt hat und dann in Spalte 34 zu jedem eingefügten Datenstz das akt. Datum automatisch setzten und da komm ich nicht mehr mit.
Grüße Erwin
Bild

Betrifft: AW: Nach Datenübernahme autom. aktuelles Datum
von: Erwin
Geschrieben am: 20.04.2005 21:52:02
Hallo Harry,
ich habs jetzt hinbekommen. Du hast mich auch die Idee gebracht. Lasse jetzt mit der Quelldatei das akt. Datum mitschicken (habe dort in Spalte 34 eine Wenn-Formel mit heute() eingebaut) und beim Einfügen mit PasteSpecial xlPasteValues wird nicht die Funktion "heute()" übernommen, sondern nur der Wert und habe somit immer das aktuelle Datum der Übernahme in der Zentraldatei, die nicht mehr verändert wird. So müsste es klappen.
Danke dir nochmals und einen schönen Abend
Erwin
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Nach Datenübernahme autom. aktuelles Datum"