Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA - Auf jeweiligen Monat springen
#1
Hey Leute!

Ich habe bereits mit google ein wenig recherchiert, konnte aber keinen funktionierenden Ansatz finden.

Ich habe eine Tabelle, welche in der 10. Zeile den Monat im folgenden Format hat:
01.01.2018

Ich würde nun gerne mit 12 Buttons auf den entsprechenden Monat springen.
Wie ist dies handzuhaben?




Beste Grüße
Antworten Top
#2
Hallo,

z.B. so:
Activesheet.Range("10:10").Find(#1/1/16#).Select

Das Datum kann z.B. in eine Variable gespeichert werden, dann kann man den gleichen Code für alle Buttons verwenden, z. B. so:
Function GeheZuDatum(Datum as Date)
Activesheet.Range("10:10").Find(Datum).Select
End Function
Gruß
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:
  • joshua
Antworten Top
#3
Hallo joshua

das geht m.E. viel einerfacher wenn du das Datum in der Zelle mit einem Hyperlink zum Ziel-Blatt verbindest.
Datum anklicken, der Hyperlink springt in die entsprechende Tabelle. Normalerweise auf A1, kann man selbst festlegen!

mfg  Gast 123
[-] Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:
  • joshua
Antworten Top
#4
(10.01.2018, 10:27)Gast 123 schrieb: das geht m.E. viel einerfacher wenn du das Datum in der Zelle mit einem Hyperlink zum Ziel-Blatt verbindest
Dann muss aber das jeweilige Datum immer in der gleichen Zelle stehen.
Gruß
Michael
Antworten Top
#5
Funktioniert die Hyperlink Variante auch mit Buttons?
Mittels Button auf eine fixe Spalte springen?
Antworten Top
#6
Nein, ein Hyperlink wird entweder direkt oder per Formel in eine Zelle gesetzt. Diese kannst Du aber so formatieren, dass diese aussieht wie ein Button.
Gruß
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:
  • joshua
Antworten Top
#7
Ok, vielen Dank.
Dann fällt diese Variante raus, da ich in 4x2 Zellen 12 Buttons einpflegen muss/ möchte.

Zu diesem Ansatz:
Wie kann ich die Variable pro Button deklarieren?
Also die Function als generische Funktion, aber wie wird den jeweiligen Buttons der entsprechende Monat als Variable deklariert?
Antworten Top
#8
Was für Buttons willst Du denn einfügen? Formularsteuerelemente oder ActiveX?

Wo in der Tabelle steht denn die Jahreszahl oder ein Datum (an einer festen Stelle)?

Ich würde die Buttons mit den jeweiligen Monatsnamen beschriften und dann daraus mit CDate ein Datum generieren

Bei ActiveX: Funktion mit dem Datum in dessen Code aufrufen.

Bei Formularsteuerelement: Hier ist sowieso eine Verknüpfung mit einem Makro nötig. Hier würde ich das ganze in ein Makro packen und den Namen aufrufenden Button ermittlen (mit Application.Caller) um daraus das Datum zu ermitteln.
Gruß
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:
  • joshua
Antworten Top
#9
Vielen Dank für deinen Beitrag.

Es soll mit den klassischen Steuerelementen gearbeitet werden.
Dies wollte ich mit Jan, Feb ...  betiteln.


Habe nie mit CDate gearbeitet.
Kann mir da einer weiterhelfen?

Anbei findet sich auch eine Musterdatei.



Besten Dank.


.xlsx   Test.xlsx (Größe: 13,09 KB / Downloads: 12)
Antworten Top
#10
Diesen Code in ein Modul:
Code:
Sub Springen()
     ActiveSheet.Range("10:10").Find(CDate("1. " & ActiveSheet.Buttons(Application.Caller).Caption & " " & Year(Range("E10")))).Select
End Sub
Dann für alle Monate einen Button erstellen, benennen und dieses Makro (Springen) zuweisen. Bitte nicht einen vorhandenen Button kopieren, da gibt es mW Probleme (dann musst Du den Namen der Schalfläche manuell auf eine eindeutige Bezeichnung anpassen).

Aber Achtung beim benennen der Schaltflächen! Es müssen die korrekten deutschen Abkürzungen verwendet werden (z. B. für März -> Mrz).
Gruß
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:
  • joshua
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste