Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
976to980
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
976to980
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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

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.

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige