Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1432to1436
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
Inhaltsverzeichnis

Kalenderwoche aus Datum - sehr große Datei

Kalenderwoche aus Datum - sehr große Datei
08.07.2015 12:02:13
Pohl
Guten Tag zusammen,
habe hier im Forum schon einige gute Lösungen für meine Excelprobleme gefunden, jedoch für mein aktuelles Problem leider nicht.
Habe eine sehr große Datei ( die täglich aktualisiert wird. Die Daten werden per Makro übertragen, Datum (08.07.2015) Monat (7) und Jahr (2015) nachträglich in die Spalten H - I - J eingetragen. Nun möchte ich in Spalte K die Kalenderwoche zum Datum in Spalte H berechnen lassen. Leider ist meine Lösung so langsam, dass ich den Vorgang immer über den Taskmanager abbrechen muss.
Habt ihr hier vielleicht eine bessere Lösung?
Hier ein Auszug aus meinem Code:
Heute = Range("Start_xxxxx!B20")
dValue = dValue - 1
Do
dValue = dValue + 1
Range("H" & dValue) = Heute 'Tag
Range("I" & dValue) = Mid(Heute, 4, 2) 'Monat
Range("J" & dValue) = Right(Heute, 4) 'Jahr
Loop While Cells(dValue, 1) "" 'bis Leerzeile
Range("H" & dValue) = "" 'letzte Zeile entfernen
Range("I" & dValue) = ""
Range("J" & dValue) = ""
End If
Next i
Dim zelle As Range
For Each zelle In Worksheets("xxxxxx").Range("H:H").Cells
If IsDate(zelle.Value) = True Then
Worksheets("xxxxxx").Cells(zelle.Row, 11).Value = WorksheetFunction.WeekNum(zelle.Value, 1)
End If
Next zelle

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kalenderwoche aus Datum - sehr große Datei
08.07.2015 12:46:38
Rudi
Hallo,
with Range(cells(dvalue,1),cells(rows.count,1).end(xlup))
.Offset(,7)= Heute
.Offset(,8)=Month(heute)
.Offset(,9=Year(heute)
.Offset(,10)= worksheetfunction.weeknum(heute,1)
end with
Gruß
Rudi

oder nachträglich?
08.07.2015 12:58:57
Rudi
Hallo,
Sub aaa()
Dim vArr, i As Long
vArr = Range(Cells(2, 1), Cells(Rows.Count, 1).End(xlUp)).Offset(, 7).Resize(, 4)
For i = 1 To UBound(vArr)
vArr(i, 4) = WorksheetFunction.WeekNum(vArr(i, 1), 1)
Next
Cells(2, 8).Resize(UBound(vArr), 4) = vArr
End Sub
Gruß
Rudi
Anzeige

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige