Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1812to1816
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

Wochenzahl und Jahr abgleichen VBA

Wochenzahl und Jahr abgleichen VBA
25.02.2021 09:19:05
Marc-David
Guten Tag zusammen,
ich benutze das Macro
Dim score As Integer
score = WorksheetFunction.WeekNum(Now())
If score = Worksheets("Haus").Range("B3") Then
Sheets("Haus").Range("B4").Value = Sheet2.Range("Tür").Value
Sheets("Haus").Range("B5").Value = Sheet2.Range("Fenster").Value
Sheets("Haus").Range("B6").Value = Sheet2.Range("Treppen").Value
Sheets("Haus").Range("B7").Value = Sheet2.Range("Stock").Value
Sheets("Haus").Range("B8").Value = Sheet2.Range("Balkon").Value
End If
um bei der richtigen Kalenderwoche die Werte in die richtige Spalte einer Tabelle zu übertragen.
Das funktioniert auch tip top so, leider aber nur solange ich max 52 Kalenderwochen habe und nicht 1 1/2 Jahre also 78 Kalenderwochen benutze. Weil dann ja 26 Kalenderwochen doppelt sind und dort auch die Werte eingetragen werden obwohl, es dann ja ein anderes Jahr ist.
Wie kann ich denn einbauen, dass Kalenderwoche und Jahreszahl verglichen wird?
Um Kalenderwoche und Jahreszahl in einer Zelle zu haben, würde ich die Formel:
=VERKETTEN(KALENDERWOCHE(DC10;21);" ";JAHR(DC10))
benutzen.
Dann steht da beispielsweise "1 2022".
Viele Grüße
MD

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

Betreff
Datum
Anwender
Anzeige
AW: Wochenzahl und Jahr abgleichen VBA
25.02.2021 09:35:57
Rudi
Hallo,
ich würde Jahr*100 + KW nehmen, das ist besser zu sortieren.
dim score as Long
score=Year(Date)*100 + WorksheetFunction.WeekNum(Date, 21)
Gruß
Rudi
AW: Wochenzahl und Jahr abgleichen VBA
25.02.2021 11:57:24
Marc-David
Hallo Rudi,
danke für deine Hilfe aber ich habe das irgendwie nicht zum Laufen bekommen.
Das von fcs funktioniert.
Viele Grüße
MD
AW: Wochenzahl und Jahr abgleichen VBA
25.02.2021 10:05:36
fcs
Hallo Marc,
welche Änderungen du an deinem Makro machen musst ist nicht eindeutig zu erkennen.
Den Text aus KW und Jahr kannst du ermitteln wie in nachfolgendem Beispiel ersichtlich.
LG
Franz
Dim score As Integer
Dim strKW_Jahr As String
score = WorksheetFunction.IsoWeekNum(Date)
strKW_Jahr = Format(score, "0") & " " & Format(Year(Date), "0000")
If strKW_Jahr = Worksheets("Haus").Range("B3") Then    '?
Sheets("Haus").Range("B4").Value = Sheet2.Range("Tür").Value
Sheets("Haus").Range("B5").Value = Sheet2.Range("Fenster").Value
Sheets("Haus").Range("B6").Value = Sheet2.Range("Treppen").Value
Sheets("Haus").Range("B7").Value = Sheet2.Range("Stock").Value
Sheets("Haus").Range("B8").Value = Sheet2.Range("Balkon").Value
End If

Anzeige
AW: Wochenzahl und Jahr abgleichen VBA
25.02.2021 11:58:42
Marc-David
Hallo Franz,
mega - ich danke dir, das funktioniert super. Darf ich aber fragen wieso IsoWeekNum(Date) und nicht WeekNum(Date;21)?
Viele Grüße
MD
AW: Wochenzahl und Jahr abgleichen VBA
25.02.2021 22:45:43
Marc-David
Hallo Franz,
bei mir hat sich doch noch eine Frage ergeben.
Kann ich deine Formel
score = WorksheetFunction.IsoWeekNum(Date)
strKW_Jahr = Format(score, "0") & " " & Format(Year(Date), "0000")
auch so veränder, dass mit einem bestimmten Datum abgeglichen wird?
Zum Beispiel auf meinem Blatt Häuser in Zelle C8 steht 25.03.2021 und damit soll abgeglichen werden.
Kenne

Sheets("Häuser").Range("C8")
aber weiß nicht wie ich das einbauen muss.
Viele Grüße
Marc-David
Anzeige
AW: Wochenzahl und Jahr abgleichen VBA
25.02.2021 23:58:24
fcs
Hallo Marc-David,
Darf ich aber fragen wieso IsoWeekNum(Date) und nicht WeekNum(Date;21)?
Sieh dir die Online-Hilfe zu den beiden Funktionen an.
https://docs.microsoft.com/de-de/office/vba/api/excel.worksheetfunction.weeknum
https://docs.microsoft.com/de-de/office/vba/api/excel.worksheetfunction.isoweeknum
weeknum
ist US-Standard = KW 1 = Woche mit 1. Januar des Jahres
isoweeknum
ermittelt die KW 1 gemäß ISO 8601 und ist konform mit KW-Berechnung in Deutschland
Fixes Datum aus Zelle statt aktuelles Datum:
score = WorksheetFunction.IsoWeekNum(Sheets("Häuser").Range("C8").Value)
strKW_Jahr = Format(score, "0") & " " & Format(Year(Sheets("Häuser").Range("C8").Value), "0000")
LG
Franz
Anzeige
AW: Wochenzahl und Jahr abgleichen VBA
26.02.2021 10:08:27
Marc-David
Hallo Franz,
Lese ich mich mal ein, tip top danke. :)
Das klappt wunderbar, ich danke dir.
Viele Grüße
Marc-David

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige