Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
740to744
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
740to744
740to744
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Wichtig und Bitte Eilig

Wichtig und Bitte Eilig
09.03.2006 14:06:29
walter
Guten Tag,
habe folgendes Makro mal vom Forum erhalten, wenn ich in der Spalte17 bin, wird die Spalte 3 bis 16 makiert, funktioniert auch.
Das Problem:
Wenn ich in der Spalte 17 eine Eingabe durchführe soll "normal" die aktive Spalte17 bleiben. Mit ENTER ganz "normal" eine Zeile weiter.
Leider geht der Courswer immer zur Zeile 3 !!!!

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo ErrExit
' Bei einem fehler zu "ErrExit" gehen
With Target ' "Target" ist die Selektierte Zelle
If .Row > 3 And .Column > 2 And .Column < 18 Then
' Wenn Zeilennummer > 3 Und Spalte > 2 Und Spalte < 12 Dann
Application.EnableEvents = False
' Ereignisprozeduren ausschalten um sich nicht selbst aufzurufen
Range(Cells(.Row, 17), Cells(.Row, 3)).Select
' Bereich in der Zeile (.Row) von "Target" von Spalte 3 bis 11 selektieren
.Activate
' "Target" als aktive Zelle setzten
End If
End With
ErrExit:
Application.EnableEvents = True
' Ereignisprozeduren wieder einschalten
End Sub

Herzliche Dank für die Unterstützung, arbeite gerade in der großen Datei,
gruß Walter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wichtig und Bitte Eilig
09.03.2006 14:22:04
Harald
Hallo Walter,
da es eilig ist, hab ich nur ne Zeile beigefügt.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo ErrExit
' Bei einem fehler zu "ErrExit" gehen
if target.column = 17 then exit sub
With Target ' "Target" ist die Selektierte Zelle
If .Row > 3 And .Column > 2 And .Column < 18 Then
' Wenn Zeilennummer > 3 Und Spalte > 2 Und Spalte < 12 Dann
Application.EnableEvents = False
' Ereignisprozeduren ausschalten um sich nicht selbst aufzurufen
Range(Cells(.Row, 17), Cells(.Row, 3)).Select
' Bereich in der Zeile (.Row) von "Target" von Spalte 3 bis 11 selektieren
.Activate
' "Target" als aktive Zelle setzten
End If
End With
ErrExit:
Application.EnableEvents = True
' Ereignisprozeduren wieder einschalten
End Sub

Gruss Harald
Anzeige
AW: Wichtig und Bitte Eilig
09.03.2006 14:55:47
walter
Hallo Harald,
war ja wirkliche schnell !!!!
Leider nicht ganz, wenn ich in der Spalte 16 stehe , wird die Zeile von 3 bis 17 makiert anschließend wird der Courser in Spalte 17 gestellt.
Ich arbeite in Spalte 17, wenn ich darin bin, soll die Zeile von 3 bis 16 makiert werden und muß in der Spalte 17 bleiben können,
mfg Walter
AW: Wichtig und Bitte Eilig
09.03.2006 15:37:35
Harald
Hallo Walter,
ich sehe in dem Code nix, was dem nun gewünschten Verhalten widerspricht. Er ändert nirgendwo die Target-Spalte.
Gruß
Harald
P.S.: Hab Feierabend und kann den Thread heute nicht mehr weiterverfolgen
Aber ...
09.03.2006 16:17:49
walter
Hallo Harald,
die Zeile wird nur makiert, wenn ich in der Spalte 16 ! bin, dann wird aber auch
die Zeile von Spalte3 bis 17 makiert.
Wenn ich jetzt was ändere dann geht auch die aktive Zelle in Spalte 17,
bei mir sollte aber die Zeilevon 3 bis 16 makiert werden, wenn ich ich in der Spalte 17
bin und nach der Eingabe möchte ich auch darin bleiben.
Vielleicht morgen,
schönen Feierabend...
mfg walter
Anzeige
AW: Aber ...
09.03.2006 18:36:09
Reinhard
Hi Walter,
soll der Code ausgeführt werden:
nur wenn du in Spalte 17 bist
oder wenn du im Spaltenberich 3:17 bist
Und wozu soll markiert werden?
Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Danke o.t.
10.03.2006 12:38:58
walter
Hallo Reinhard,
habe Fehler gefunden, erledigt. So reingesetzt und i.o.
'-------- so wird die aktive zelle makiert und und in der aktiven Zelle -----------
'

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'On Error GoTo ErrExit
' Bei einem fehler zu "ErrExit" gehen
''If Target.Column = 17 Then Exit Sub
''With Target ' "Target" ist die Selektierte Zelle
'  If .Row > 3 And .Column > 2 And .Column < 18 Then         'orginal
'' If .Row > 3 And .Column < 18 Then
' Wenn Zeilennummer > 3 Und Spalte > 2 Und Spalte < 12 Dann
''  Application.EnableEvents = False
' Ereignisprozeduren ausschalten um sich nicht selbst aufzurufen
''    Range(Cells(.Row, 16), Cells(.Row, 3)).Select
' Bereich in der Zeile (.Row) von "Target" von Spalte 3 bis 11 selektieren
''         .Activate
' "Target" als aktive Zelle setzten
'' End If
''End With
'ErrExit:
''Application.EnableEvents = True
' Ereignisprozeduren wieder einschalten
'End Sub

mfg Walter
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige