Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Excel 2016 - Bei Doppelklick Kalenderwoche / Datum

196 views
Skip to first unread message

hakan.kay...@googlemail.com

unread,
Aug 19, 2018, 7:55:35 AM8/19/18
to
Hallo liebe Excel VBA Community

Habe ein Anliegen bestehend aus zwei verschiedenen Aufgaben innerhalb eines Tabellenblatts.

Ich würde gerne in meinem Tabellenblatt in die verbundene Zelle C4:C5 (bei Doppelklick in die Zelle) die aktuelle KW eintragen lassen. Hatte das Skript hierfür schonmal, habe es jedoch verloren.

Weiterhin soll in die verbundenen Zellen F5:H5; J5:L5; N5:P5; R5:T5; V5:X5; Z5:AB5; AD5:AF5 bei Doppelklick das Datum im Format dd.mm.yyyy eingetragen werden.

Kann mir evtl. jemand bei der Umsetzung helfen. Vielen Dank im Voraus.

Mit freundlichen Grüßen
Hakan

Carlos Naplos

unread,
Aug 19, 2018, 8:27:40 AM8/19/18
to
Hallo Hakan

Öffne den VBA-Editor! (Alt+F11)
Rechts-klicke im Projektfenster auf das gewünschte Arbeitsblatt und
wähle "Code anzeigen" im Kontextmenü!

Gib im Code-Fenster folgendes ein:

' --- Code-Anfang ---
Option Explicit

Private Sub Worksheet_BeforeDoubleClick( _
ByVal Target As Range, Cancel As Boolean)

Application.ScreenUpdating = False

If Not Application.Intersect(Target, Range("C4:C5")) Is Nothing Then
On Error Resume Next
Application.EnableEvents = False

ActiveCell.Value = _
DatePart("ww", Date, vbMonday, vbFirstFourDays)

Application.EnableEvents = True
End If

Application.ScreenUpdating = True

End Sub
' --- Code-Ende ---

So ähnlich kann auch Deine zweite Anforderung erfüllt werden.

Gruß
CN

hakan.kay...@googlemail.com

unread,
Aug 25, 2018, 7:10:20 AM8/25/18
to
Hallo Carlos

Zunächst möchte ich mich herzlich dafür bedanken, dass Du dich bereit erklärt hast mir bei meinem Anliegen zu helfen. Dummerweise habe ich diese Anfrage gestellt, einen Tag bevor ich in verreist bin. Ich komme deswegen auch jetzt erst dazu, weiter an meinem Projekt zu arbeiten. Ich bitte vielmals um Verzeihung für die Funkstille.

Was Deinen Code betrifft, so hilft er mir bei der KW, nicht aber beim Datum per Doppelklick. Könntest Du mir da evtl. nochmal helfen :-)
Vielen Dank für Deine bisherigen Mühen.

Gruß
Hakan

Claus Busch

unread,
Aug 25, 2018, 7:18:20 AM8/25/18
to
Hi Hakan,

Am Sat, 25 Aug 2018 04:10:18 -0700 (PDT) schrieb
hakan.kay...@googlemail.com:

> Was Deinen Code betrifft, so hilft er mir bei der KW, nicht aber beim Datum per Doppelklick. Könntest Du mir da evtl. nochmal helfen :-)
> Vielen Dank für Deine bisherigen Mühen.

probiere mal:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("C4,J5:AD5")) Is Nothing Then Exit Sub

If Target.Column = 3 Then
Target = "KW" & Chr(10) & Application.WeekNum(Date, 2)
ElseIf Target.Column Mod 4 = 2 Then
Target = Date
End If
End Sub


Mit freundlichen Grüßen
Claus
--
Windows10
Office 2016

hakan.kay...@googlemail.com

unread,
Aug 25, 2018, 8:21:06 AM8/25/18
to
Hallo Claus

Vielen Dank für Deine Hilfe. Das mit dem Datum per Doppelklick klappt jetzt.
Bei der KW hat er irgendwie noch Schwierigkeiten. Da haut er auch ein Datum rein anstatt die KW.
Es handelt sich um eine verbundene Zelle Range B4:C6.
Ich habe schon ein bissl rumprobiert aber irgendwie klappt es nicht.

Gruß
Hakan

Claus Busch

unread,
Aug 25, 2018, 8:28:12 AM8/25/18
to
Hallo Hakan,

Am Sat, 25 Aug 2018 05:21:04 -0700 (PDT) schrieb
hakan.kay...@googlemail.com:

> Bei der KW hat er irgendwie noch Schwierigkeiten. Da haut er auch ein Datum rein anstatt die KW.
> Es handelt sich um eine verbundene Zelle Range B4:C6.
> Ich habe schon ein bissl rumprobiert aber irgendwie klappt es nicht.

in deiner Frage hattest du geschrieben, dass es sich um die verbundene
Zelle C4:C5 handelt.

Wenn das jetzt B4:C6 ist, ändere den Code ab:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Intersect(Target, Range("B4,J5:AD5")) Is Nothing Then Exit Sub

If Target.Column = 2 Then

hakan.kay...@googlemail.com

unread,
Aug 25, 2018, 8:39:51 AM8/25/18
to
Super jetzt klappt`s :-)
Gibt`s noch die Möglichkeit, zwischen KW und der Zahl ein Leerzeichen einzubauen?

Claus Busch

unread,
Aug 25, 2018, 9:12:36 AM8/25/18
to
Hallo Hakan,

Am Sat, 25 Aug 2018 05:39:49 -0700 (PDT) schrieb
hakan.kay...@googlemail.com:

> Gibt`s noch die Möglichkeit, zwischen KW und der Zahl ein Leerzeichen einzubauen?

zwischen KW und der Zahl ist ein Umbruch. D.h. es sollte in zwei Zeilen
angezeigt werden. Wenn du es in einer Zeile haben willst, ersetze
Chr(10) durch Chr(32)

hakan.kay...@googlemail.com

unread,
Aug 25, 2018, 9:13:08 AM8/25/18
to
Hallo Claus

Das mit dem Leerzeichen habe ich lösen können. Ich habe die Formatierung der Zelle angepasst. Ich hoffe das war`s dann. Morgen werde ich es sehen.

Leider bin ich auf ein neues Problem gestoßen. Meine Arbeitsmappe besteht aus mehreren Tabellenblättern in denen die KW auch angezeigt werden sollte.

Dazu hatte ich bisher einfach =SUMME(FOD!B4) angewandt. Leider ist die Zelle in der das Ergebnis angezeigt werden soll nicht identisch mit der Zelle von der ich die KW beziehen möchte.

Gibt es da einen Weg, um einfach nur die im ersten Tabellenblatt erzeugte KW XX auf allen übrigen Tabellenblättern jeweils an der gleichen Stelle Range B4:C4 anzuzeigen?

Gruß
Hakan
0 new messages