Herbers Excel-Forum - das Archiv

Ansicht nach Arbeitsblatt wechsel

Bild

Betrifft: Ansicht nach Arbeitsblatt wechsel
von: wolfgang

Geschrieben am: 17.02.2008 19:53:25

Guten Abend,
ich habe folgendes Problem, in einem Tabellenblatt wird an verschiedenen Tagen
ein "x" eingegeben, was, durch ein Makro, einen Sprung in ein anderes Tabellen-
blatt (in Spalte C) bewirkt.
Dass Problem ist nun, Spalte A und B sind am linken Rand "rausgeschoben",
sollten aber sichtbar sein, da in Spalte A das Datum (a3 = 01.01.2008 bis A369
= 31.12.2008) steht, in Spalte B (manchmal) Hinweise.
Ggf. handelt es sich nur um einen Fehler im Makro, siehe unten ???
Die zweite Frage hierzu, gibt es eine Möglichkeit (z.B. in Spalte E) einen "mitlau-
fenden" Button als Rücksprung in das Herkunftsdatenblatt (jeder Monat hat ein
Blatt) zu deklarieren??
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim lngR As Variant
If Sh.Name <> "Anmerkungen" Then
If Target.Column = 22 And Target.Count = 1 Then
If Target = "x" Then
If Sh.Cells(Target.Row, 1) <> "" Then
If IsDate(Cells(Target.Row, 1)) Then
lngR = Application.Match(Cells(Target.Row, 1), Sheets("Anmerkungen").Range("A1:A368"), 0)
If IsNumeric(lngR) Then Application.Goto Sheets("Anmerkungen").Cells(lngR, 3), True
End If
End If
End If
Danke für jede Hilfe
wolfgang

Bild

Betrifft: AW: Ansicht nach Arbeitsblatt wechsel
von: fcs

Geschrieben am: 18.02.2008 09:56:45
Hallo Wolfgang,
mit folgenden Anpassungen geht's:
1. deinen Code unter "DieseArbeitsmappe" anpassen
2. allgemeines Modul mit dem Code für die Schaltfläche anlegen
3. Im Blatt Anmerkungen eine Schaltfläche anlegen (aus Symbolleiste Formular) und das Makro "zumHerkunftsblatt" zuweisen.
Gruß
Franz

'##Prozedur in DieseArbeitsmappe
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim lngR As Variant
Dim wksAnm As Worksheet
Set wksAnm = Worksheets("Anmerkungen")
If Sh.Name <> "Anmerkungen" Then
If Target.Column = 22 And Target.Count = 1 Then
If Target = "x" Then
If Sh.Cells(Target.Row, 1) <> "" Then
If IsDate(Cells(Target.Row, 1)) Then
lngR = Application.Match(Cells(Target.Row, 1), wksAnm.Range("A1:A368"), 0)
If IsNumeric(lngR) Then
'Herkunftsblatt merken
Set wksHerkunft = Sh
'Schaltfläche aus Symbolleiste Formular positionieren
wksAnm.Shapes("Schaltfläche 1").Top = wksAnm.Cells(lngR, 5).Top
wksAnm.Shapes("Schaltfläche 1").Left = wksAnm.Cells(lngR, 5).Left
Application.Goto wksAnm.Cells(lngR, 3), True
ActiveWindow.ScrollColumn = 1
End If
End If
End If
End If
End If
Else
Set wksHerkunft = Nothing
End If
End Sub
'### in einem allgemeinen Modul
'Prozedur per Schaltfläche im Blatt Anmerkungen ausführen/aufrufen
Public wksHerkunft As Worksheet
Sub zumHerkunftsblatt()
If Not wksHerkunft Is Nothing Then
wksHerkunft.Activate
Set wksHerkunft = Nothing
End If
End Sub


Bild

Betrifft: AW: Ansicht nach Arbeitsblatt wechsel
von: wolfgang
Geschrieben am: 18.02.2008 10:56:08
Erst mal schönen Dank,
werde es dann ausprobieren.
wolfgang

 Bild
Excel-Beispiele zum Thema "Ansicht nach Arbeitsblatt wechsel"
Startansicht wiederherstellen Eine Serie von Diagrammen erstellen und Druckansicht zeigen
1000 Arbeitsblätter aus 1000 Arbeitsmappen einlesen Aktueller Arbeitsblattname in Formel
Arbeitsblatt 40 mal kopieren 40 neue Arbeitsblätter hinzufügen
Diagramm aus Arbeitsblatt in Diagrammblatt übertragen Wert in alle Arbeitsblätter eintragen
Ausgewählte Arbeitsblätter auslesen AutoFilter über mehrere Arbeitsblätter setzen