Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1236to1240
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
Inhaltsverzeichnis

Cursor per Makro positionieren

Cursor per Makro positionieren
tuska
Hallo,
In einer Tabelle erfasse ich in Spalte B die Beginnzeit für eine Tätigkeit (in Spalte C die Ende-Zeit).
Weiters gibt es in Zeile 1 (Überschrift) sehr viele Spalten mit Tätigkeiten, die nicht alle sichtbar sind, da sie rechts über den Bildschirm hinausragen und die ich mit dem kleinen "x" ankreuze.
Beispiel:
1. Erfassung der Beginnzeit in Zelle B5
2. ankreuzen der Tätigkeit in Zelle AF5 (nicht am Bildschirm sichtbar, erst über Tabulator/scrollen erreichbar)
Ziel ist:
Nach Eingabe einer Beginnzeit eine bestimmte Tätigkeit, die dzt. nicht am Bildschirm angezeigt wird und nur durch Tabulator oder scrollen erreicht wird (in derselben Zeile wie die Beginnzeit), mit Klick auf einen Button zu erreichen und automatisch ankreuzen zu lassen sowie Cursor rechts von angekreuzter Zelle zu positionieren
Mein Wunsch wäre folgender ...
1. Button mit Makro
2. nach Klick auf den Button wird per Makro nach unten nach der letzten Beginnzeit gesucht
3. wenn die letzte Beginnzeit gefunden wird, dann soll der Cursor in derselben Zeile (lt. obigem Beispiel
die Zeile 5) zur Spalte AF bewegt werden, also in die Zelle AF5
... damit wäre mir sehr geholfen.
Als Highlight würde ich noch diese Ergänzung ansehen:
4. nachdem sich der Cursor in Zelle AF5 befindet wird automatisch ein kleines "x" eingetragen und
5. der Cursor 1 Spalte nach rechts bewegt, lt. obigem Beispiel in Zelle AG5
Bei einer ähnlichen Problemstellung - bei der ich Hilfe im Forum erhalten habe:
https://www.herber.de/forum/archiv/1172to1176/t1173460.htm

hat der Code so gelautet: Cells(Cells(Rows.Count, 1).End(xlUp).Row + 1, 1).Select
(diesen kann ein Makrospezialist sicher anpassen)
Ich bitte um Hilfe bei diesem Problem und bedanke mich im voraus für die Bemühungen.
Mit freundlichem Gruss
Karl
AW: Cursor per Makro positionieren
19.11.2011 16:41:36
Armin
Hallo Karl,
tausche einfach die zwei Zeilen gegen die alten aus.
Cells(Cells(Rows.Count, 2).End(xlUp).Row, 32).Value = "x"
Cells(Cells(Rows.Count, 2).End(xlUp).Row, 33).Select
Hinweis: Wäre es denn nicht sinnvoll wenn Du Dich mit der Materie etwas befasst?
Nicht falsch verstehen, aber Du wirst dann viele Erfolgserlebnisse haben.
LG
Armin
AW: Cursor per Makro positionieren
21.11.2011 21:54:53
tuska
Hallo Armin,
danke für Deinen wohlgemeinten Ratschlag. Ein Excel-Makroprogrammierer werde ich in diesem Leben wohl nicht mehr werden - aber ich frage wirklich nur sehr selten hier in diesem Forum an.
Herzlichen Dank auch für Deine Lösung.
Ich versuche mich schon in Formel einzulesen und habe dann noch folgendes ausprobiert:
... Rows.Count, 2 habe ich auf 1 geändert ... damit der Cursor nicht von der letzten Beginnzeit nach unten springt. Den Code umzuschreiben hätte ich sicher nicht geschafft.
Cells(Cells(Rows.Count, 1).End(xlUp).Row, 32).Value = "x"
Cells(Cells(Rows.Count, 1).End(xlUp).Row, 33).Select
Damit habe ich jetzt aber eine perfekte Lösung, um auch Zellen "anzuspringen", die nicht mehr am Monitor sichtbar sind.
Leider habe ich keine E-Mail Verständigung erhalten, sonst hätte ich mich schon früher gemeldet.
Danke nochmals,
LG
Karl
Anzeige
AW: Cursor per Makro positionieren
22.11.2011 08:25:01
tuska
Hallo Armin,
... Rows.Count, 2 habe ich auf 1 geändert ... muß mich korrigieren: Deine Lösung war ohnehin schon perfekt. (Zu dieser Änderung kam es nur, da ich die Formeln bis in Zeile 2000 ausgefüllt hatte und dann sämtliche Zellen mit . (Punkten) in Zeile 2001 ausgefüllt habe ab Spalte B - in Spalte A = Datumsspalte habe ich den Punkt in Zeile 2001 entfernt)
Leider habe ich jetzt einen gravierenden Nachteil bei dieser Lösung festgestellt:
Die Formel sucht immer nach der letzten Beginnzeit und positioniert den Cursor in dieser Zeile in Spalte AF.
Wenn ich laufend Einträge mache und ich habe zB bereits 10 Zeilen erfasst und merke, daß ich in Zeile 7 bereits den Button drücken hätte müssen, dann bringt mir der Button in diesem Fall nichts mehr.
Besser wäre folgendes:
In der Zeile in der sich der Cursor befindet soll nach Drücken des Buttons der Cursor nach rechts zur Spalte AF bewegt werden, "x" eingetragen werden und dann der Cursor eine Zelle nach rechts bewegt werden.
Hättest Du vielleicht auch hiefür eine Lösung? Bitte um Unterstützung.
LG
Karl
Anzeige
AW: Cursor per Makro positionieren
22.11.2011 08:54:59
Armin
Hallo Karl,
wovon ist den das drücken des Button abhänig? Möglicherweise kann man das gleich als Entscheidung benutzen?
LG
Armin
AW: Cursor per Makro positionieren
22.11.2011 09:06:50
tuska
Hallo Armin,
in Spalte A ist meine Datumsspalte, Spalte B = Beginnzeit; Spalte C = Endezeit; spalte D = Minuten, spalte E = stunden; ab dann habe ich diverse tätigkeiten-spalten und spalten für anzahl dieser tätigkeiten.
es geht alles etwas in die breite, d.h. dzt. habe ich spalten mit überschriften bis spalte "BX" definiert.
Leider sind nicht alle sichtbar.
eine meiner häufigsten tätigkeiten ist in spalte AF (die reihenfolge/anordnung möchte ich aber nicht ändern) und genau diese läßt sich auch mit 2x Tab drücken nicht exakt erreichen, d.h. ich muß jedesmal scrollen und genau die Zeile "anvisieren" damit ich mich beim "x" nicht in der zeile irre - recht mühsam.
Daher meine Bitte: Falls sich der Cursor zB in Zeile 8 [Spalte C] befindet soll nach Drücken des Buttons
der Cursor in die Spalte AF springen, ankreuzen und nach rechts gehen.
LG
Karl
Anzeige
AW: Cursor per Makro positionieren
22.11.2011 09:21:46
Armin
Hallo Karl,
füge in das Makro das die Aktionen des Button ausführt am Ende folgende Zeilen ein:
If ActiveCell.Column = 3 Then
ActiveCell.Offset(0, 29).Value = "x"
ActiveCell.Offset(0, 30).Select
End If
LG
Armin
AW: Cursor per Makro positionieren
22.11.2011 09:29:05
tuska
Hallo Armin,
der komplette Code sieht bei mir jetzt so aus:
Private Sub CommandButton3_Click()
Cells(Cells(Rows.Count, 1).End(xlUp).Row, 32).Value = "x"
Cells(Cells(Rows.Count, 1).End(xlUp).Row, 33).Select
If ActiveCell.Column = 3 Then
ActiveCell.Offset(0, 29).Value = "x"
ActiveCell.Offset(0, 30).Select
End If
End Sub
Der Cursor geht in die Zeile mit der letzten Beginnzeit ... so wie vorher.
Der Cursor soll in der Zeile in der ich mich gerade befinde (dies war idF die Zeile oberhalb) ankreuzen..
Kannst Du den Code bitte nochmals prüfen. Danke!
LG
Karl
Anzeige
AW: Cursor per Makro positionieren
22.11.2011 09:31:19
Armin
Hallo Karl,
der sollte dann so ausschauen:
Private Sub CommandButton3_Click()
If ActiveCell.Column = 3 Then
ActiveCell.Offset(0, 29).Value = "x"
ActiveCell.Offset(0, 30).Select
End If
End Sub

LG
Armin
AW: Cursor per Makro positionieren
22.11.2011 09:38:27
tuska
Hallo Armin,
bei Deinem Code:
Private Sub CommandButton3_Click()
If ActiveCell.Column = 3 Then
ActiveCell.Offset(0, 29).Value = "x"
ActiveCell.Offset(0, 30).Select
End If
End Sub
wird nach Klick auf den Button der Button fokussiert und der Cursor bleibt auf dem Button -
es erfolgt keine Ankreuzung,etc.
LG
Karl
Anzeige
AW: Cursor per Makro positionieren
22.11.2011 09:35:06
tuska
Hallo Armin,
vielleicht habe ich mich nicht richtig ausgedrückt:
Egal in welcher Spalte sich der Cursor befindet - entscheidend ist die Zeile, d.h.
befindet sich der Cursor in Zeile 7 dann ankreuzen in Zeile 7 (Spalte AF)
befindet sich der Cursor in Zeile 9 dann ankreuzen in Zeile 9 (Spalte AF), usf.
LG
Karl
AW: Cursor per Makro positionieren
22.11.2011 09:43:08
Armin
Hallo Karl,
dann ohne die Abrage der Spalte:
Private Sub CommandButton3_Click()
Range("AF1").Offset(ActiveCell.Row - 1, 0).Value = "x"
Range("AG1").Offset(ActiveCell.Row - 1, 0).Select
End Sub
LG
Armin
Anzeige
AW: Cursor per Makro positionieren
22.11.2011 09:51:58
tuska
Hallo Armin,
unsere Nachrichten haben sich leider überschnitten.
Der letzte Code, den Du mir mitgeteilt hast ist für mich PERFEKT!
Nochmals vielen Dank - ohne Deine Hilfe hätte ich das nie geschafft.
Für mich ist das Problem gelöst.
Liebe Grüße
Karl
AW: Cursor per Makro positionieren
22.11.2011 09:47:17
tuska
Hallo Armin,
jetzt habe ich das Problem durchschaut:
Dein Code ...
Private Sub CommandButton3_Click()
If ActiveCell.Column = 2 Then
ActiveCell.Offset(0, 29).Value = "x"
ActiveCell.Offset(0, 30).Select
End If
End Sub
funktioniert ausgezeichnet - bevor ich den Button drücke muß der Cursor aber immer in Spalte B sein.
Vielen Dank für Deine Bemühungen!
LG
Karl
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige