Herbers Excel-Forum - das Archiv
Nach Eingabe in anders Tabellenblatt springen

|
Betrifft: Nach Eingabe in anders Tabellenblatt springen
von: Daniel
Geschrieben am: 02.10.2003 09:35:35
Hallo ihr Excel und VBA Freaks,
nachdem ich nun mehrere Stunden damit verbracht habe mein Problem in einem Forum zu finden, aber nur falsche Ansätze gefunden habe, stelle ich meine Frage direkt an euch:
Ich habe eine Arbeitsmappe mit 5 Arbeitblättern, in denen jeweils unterschiedliche Anzahl von Spalten sind,
jetzt suche ich nach einer Funktion,
das ich nach jeder letzten "Eingabe" Spalte (also die letzte Spalte wo ich für eingaben vorgesehen habe) automatisch in das nächste Arbeitsblatt springen kann.
(Das habe ich auch soweit hinbekommen, das das funktioniert)
Was mir jetzt noch fehlt, ist:
1. Das bei einem Sprung in das nächste Arbeitsblatt, die Eingabe wieder am Anfang der Tabelle anfängt, also in Spalte A (oder B)
(mit dem Vorhanden Code, steht der Cursor da wo er zuletzt gestanden ist, in dem Fall in der letzten Spalte)
2. Das bei einen Sprung vom letzten Arbeitsblatt ins erste Automatisch eine Zeile runterrückt (Und auch wieder am Anfang, also Spalte A anfängt).
-----------
Mein Vorhandener Codeschnipsel:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range
Set rng = Application.Intersect(Target, Range("A:O"))
If Not rng Is Nothing Then
If Target.Column = 14 Then
Worksheets("Customer_Maintenance_Products").Activate
End If
End If
End Sub
-----------
Vielen Dank schonmal für eure Hilfe....
Mfg
Daniel Hippe
Betrifft: AW: Nach Eingabe in anders Tabellenblatt springen
von: börni
Geschrieben am: 02.10.2003 09:41:43
hi markus,
nach Worksheets("Customer_Maintenance_Products").Activate kommt einfach ein
Range("A1").Select
und bei B) ein
Range("A2").Select
grüße
börni
Betrifft: AW: Nach Eingabe in anders Tabellenblatt springen
von: Daniel
Geschrieben am: 02.10.2003 09:50:32
An sowas habe ich auch schon gedacht, bin aber darran verzweifelt.
Da bringt mir VBA dann einen Fehler:
"Die Select Methode des Range Objekts konnte nicht ausgeführt werden."
Ich vermute mal, das der sich mit dem Range noch auf das das letzte Tabellenblatt beziehen möchte???!
Auserdem ist deine logik auch falsch, ich möchte nicht immer wieder zu A1 springen, sondern nur in Spalte 1 aber egal in welcher Zeile ( 1-500)
PC: Ich heiße Daniel nicht Markus :-)
Betrifft: AW: Nach Eingabe in anders Tabellenblatt springen
von: börni
Geschrieben am: 02.10.2003 09:54:43
tschuldige bitte markus,
da war ich wohl mit meinen gedanken wieder irgendwo *gg*
genauer kann ich dir dann auch nicht mehr helfen, bin kein profi!
grüße an DANIEL ;o)
Betrifft: Schon vergessen ? Oder Aufgabe nicht realisierbar?
von: Daniel
Geschrieben am: 02.10.2003 10:40:30
Nicht das ich euch drängen möchte, aber mir scheint man übersieht meinen Eintrag,
oder ist ist mein problem nicht realisierbar?
Mfg
Daniel
Betrifft: AW: Nach Eingabe in anders Tabellenblatt springen
von: Matthias G
Geschrieben am: 02.10.2003 11:49:26
Hallo Daniel,
ich hab was, allerdings mit globalen Variablen.
Folgender Code in "DieseArbeitsmappe":
Public z0 As Long
Public lb As String
Private Sub Workbook_Activate()
lb = ActiveSheet.Name
z0 = ActiveCell.Row
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If ActiveSheet.Name = "Tabelle1" And lb = "Tabelle5" Then z0 = z0 + 1
Cells(z0, 1).Select '1 für Spalte A
lb = ActiveSheet.Name
z0 = ActiveCell.Row
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
z0 = ActiveCell.Row
End Sub
Die Tabellennamen "Tabelle1", "Tabelle5" müsstest Du evtl. noch anpassen, oder Du nimmst den Index.
Ich hoffe ich konnte Dir weiterhelfen!
Gruß,
Matthias
Betrifft: AW: Nach Eingabe in anders Tabellenblatt springen
von: Daniel
Geschrieben am: 02.10.2003 12:46:48
Vielen Dank Matthias
nach ein paar kleinen Modifikationen funktioniert es jetzt wunderbar...
Muste nur erstmal durchsteigen, das sich dein CODE auf meinen Bezieht, bzw darrauf aufbaut, aber habe alles gelößt bekommen.
Danke nochmal...
Mfg
Daniel
Betrifft: AW: Danke für die Rückmeldung - o.T.
von: Matthias G
Geschrieben am: 02.10.2003 14:44:03
-