Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datumübertragung per Befehlsschaltfläche

Forumthread: Datumübertragung per Befehlsschaltfläche

Datumübertragung per Befehlsschaltfläche
21.05.2008 20:17:00
Arturo
Hallo Leute,
ich habe auf Excel einen Terminkalender erstellt, bei dem links der jetzige Monat (mittig), vorherige Monat (oben) und der kommende Monat (unten) zu sehen ist.
Ich würde gerne mit mehreren transparenten Befehlsschaltflächen alle einzelnen Tage bedecken. Sinn dieser Aktion ist es, das per Klick auf diese Befehlsschaltflächen, das Tagesdatum meines Terminkalenders (B1=Jahr,C1=Monat,D1=Tag) auf den jeweiligen Tag unter der Befehlsschaltfläche springt.
Ich habe beispielweise über das Feld E8 (Datum) eine Befehlsschaltfläche gelegt, und will, dass beim Druck dieser Befehlsschaltfläche auf das Feld B1 das Jahr, Feld C1 der Monat und Feld D1 der Tag vom Datum E8 übertragen wird.
Welchen Code muß ich jetzt unter der Befehlsschaltfläche "CommandButton1" eintragen?
Merci für alle Excel-Begeisterten die mir helfen wollen.
Gruß Arturo

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datumübertragung per Befehlsschaltfläche
21.05.2008 20:35:00
Reinhard
Hi Arturo,

Private Sub CommandButton1_Click()
With CommandButton1
Range("B1") = Year(.TopLeftCell.Value)
Range("C1") = Month(.TopLeftCell.Value)
Range("D1") = Day(.TopLeftCell.Value)
End With
End Sub


Aber pro Button brauchst du dann Code.
M.E. wäre es besser du schreibst in das Modul vom Tabellenblatt dieses:


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column > 1 Then Exit Sub
If Target.Cells.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
Application.EnableEvents = False
Range("B1") = Year(Target.Value)
Range("C1") = Month(Target.Value)
Range("D1") = Day(Target.Value)
Application.EnableEvents = True
End Sub


Das deckt alle Zellen in A ab.
Gruß
Reinhard

Anzeige
Nachtrag
21.05.2008 20:37:31
mumpel
Es geht auch einfacher, ohne Deklaration (Dim)
If target.Address = "$C$5" Or target.Address = "$N$5" Then
ActiveSheet.Name = Format(Range("C5"), "mmm.yyyy") & " bis " & Format(Range("N5"), "mmm.yyyy")
End If


Anzeige
AW: Nachtrag
21.05.2008 20:38:00
mumpel
Hoppla, war falscher Beitrag. Bitte ignorieren.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige