VBA Blättern

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: VBA Blättern von: niki
Geschrieben am: 31.03.2005 11:32:34

Hallo zusammen,

Meine frage an das forum wäre die, wie ein makro aussieht, um ein (bzw) 2 schaltflächen das vor und zurück blättern in einer mappe zuzuweisen...

Ich hab also am unteren blattrand zwei schaltflächen (am ersten und letzten blatt der mappe nur eines), welche mit "vor" und "zurück" beschriftet sind...wie muss der code lauten, damit in die zelle a1 des nächsten blattes gewechselt wird? und wie muss er für a1 zurück lauten?

Müssen diese beiden codes in einem Modul oder in jedem arbeitsblatt eingefügt werden...?
Ich bitte und danke um Hilfe...

P.S.: An th.heinrich vielen Dank für seine Lösung von vor Ostern..

Bild


Betrifft: AW: VBA Blättern von: Tobias Marx
Geschrieben am: 31.03.2005 11:45:35

Servus!

Du musst das in jeder Excel-Datei einfuegen:

Private Sub CommandButton1_Click()
  wbcnt = Worksheets.Count
  If wbcnt <> 1 Then Worksheets(wbcnt - 1).Activate
  If wbcnt = 1 Then MsgBox ("Sie sind schon am Anfang der Arbeitsmappe angekommen!")
End Sub
Private Sub CommandButton2_Click()
  wbcnt = Worksheets.Count
  Worksheets(wbcnt + 1).Activate
End Sub

Gruss

Tobias


Bild


Betrifft: AW: VBA Blättern, frage an Tobias von: niki
Geschrieben am: 31.03.2005 12:00:00

Zuerst gleich danke für die rasche antwort..."in jede ExcelDatei" einfügen, meinst du damit jedes einzelne arbeitsblatt?...

Bin leider echt kein vba kenner...aber brauchs trotzdem manchmal...das sind ja 2 codes, getrennt durch End Sub, also ist das hier der code für zurück blättern


Private Sub CommandButton1_Click()
  wbcnt = Worksheets.Count
  If wbcnt <> 1 Then Worksheets(wbcnt - 1).Activate
  If wbcnt = 1 Then MsgBox ("Sie sind schon am Anfang der Arbeitsmappe angekommen!")
End Sub


und dieser fürs vor blättern...

Private Sub CommandButton2_Click()
  wbcnt = Worksheets.Count
  Worksheets(wbcnt + 1).Activate
End Sub


Könntest du her auch eine msgbox einbauen? keine Ahnung warum ,aber bei mir funktioniert das hganze nicht ,kann der grung sein das command button bei mir halt schaltfläche heisst? sollt doch egal sein oder?

Vielleicht hast noch ein wenig zeit, danke


Bild


Betrifft: AW: VBA Blättern, frage an Tobias von: Tobias Marx
Geschrieben am: 31.03.2005 12:07:48

Servus!

Also wenn Command_Button1 bei dir Schaltfläche1 heisst, musst du das natuerlich aendern, sonst geht garnix. Ansonsten hast dus richtig erkannt, der erste Code ist fuer zurueck, der zweite fuer vor. WOzu brauchst du denn eine zweite MsgBox? Ich seh darin irgendwie keinen Sinn...
Nein, du musst zwar auf jedes Arbeitsblatt die Buttons draufmachen, aber den Code nur einmal pro Workbook einfuegen, egal, wieviele Tabellen drin sind.

So, jetz geh ich ersma essen, bin ab 12:45 wieder da!

Gruss

Tobias


Bild


Betrifft: AW: VBA Blättern, Mahlzeit erst mal... von: niki
Geschrieben am: 31.03.2005 12:23:09

...vielleicht gehts sichs später aus, dass mir noch mehr erklärst...

Ich füge also beide codes in die arbeitsmappe ein, nicht in das blatt...dann füge ich in das blatt (in der normalen ansicht, nicht im editor), zwei schaltflächen ein, denen ich normalerweise immer ein makro zuordnen kann...das funktioniert jetzt bei diesen codes aber nicht...schade....was mach ich falsch?


Bild


Betrifft: AW: VBA Blättern, frage an Tobias von: Uduuh
Geschrieben am: 31.03.2005 12:21:20

Hallo,
Der Code von Tobias ist definitiv falsch!
Mit Code 1 wird immer das vorletzte Blatt angesprungen. Code 2 verursacht immer einen Fehler, da ein nicht existierendes Blatt (Anzahl der Blätter+1) angesprungen werden soll.
Wenn deine Buttons 'Schaltfläche' heißen, hast du Buttons aus der Symbolleiste Formular eingefügt.
In ein Modul:

Sub vor()
if activesheet.index=worksheets.count then
msgbox "Du bist schon hinten"
else
sheets(Activesheet.index+1).activate
end if
End Sub


Sub zurueck()
if activesheet.index=1 then
msgbox "Du bist schon vorne"
else
sheets(Activesheet.index-1).activate
end if
End Sub

Rechtsklick auf deine Buttons und die Makros entsprechend zuweisen.
Gruß aus'm Pott
Udo



Bild


Betrifft: AW: VBA Blättern, frage an Tobias von: niki
Geschrieben am: 31.03.2005 12:24:44

danke dir sehr, hab mich nicht mehr auskennt!!! jetzt passts, suoer.


Bild


Betrifft: AW: VBA Blättern, frage an Tobias von: Tobias Marx
Geschrieben am: 31.03.2005 12:37:52

Hmpf...

Da hab ich dummerweise Index und Count verwechselt. @ Udo: Bei mir is im Moment das Problem, dass meine Excel-Installation von irgendsonem bloeden Update verhunzt wurde und nicht mehr startbar ist. Deswegen muss ich alles, was ich hier beantworte, untested reinstellen.

Gruss

Tobias


 Bild

Beiträge aus den Excel-Beispielen zum Thema "noch ein problem mit der uhrzeit"