Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Unterbrechung des Sprung von Feld zu Feld?
#1
Hallo
 
im Excel-Blatt habe ich so programmiert, dass ich per Enter vom Feld (auch wenn leer ist) zu bestimmten Feld springen kann. Allerdings ich kann nicht das Sprung nicht unterbrechen, wenn ich nebenbei mal ein anderen Feld anklicken will, um dort etwas zu notieren, also ich muss mich erst zwangsläufig komplett bis zum Ende durchspringen lassen.
 
Wie kann ich entsprechend so programmieren, damit ich das Sprung unterbrechen kann? Siehe Code-Skript unten.
 
Im Voraus vielen Dank!
 
Herzliche Grüße
 
Martin
 

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
   Static strA As String
   Select Case strA
  
    Case "$U$2"
     Range("F3").Activate
  
    Case "$F$3"
     Range("C6").Activate
    
    Case "$C$6"
     Range("C7").Activate
     
    Case "$C$7"
     Range("C8").Activate
        
    Case "$C$8"
     Range("N6").Activate
    
    Case "$N$6"
     Range("N7").Activate
    
    Case "$N$7"
     Range("S6").Activate
   
    Case "$S$6"
     Range("S7").Activate
    
    Case "$S$7"
     Range("D11").Activate
   
    Case "$D$11"
     Range("D12").Activate
    
    Case "$D$12"
     Range("D13").Activate
       
    Case "$D$13"
     Range("D15").Activate
    
    Case "$D$15"
     Range("D16").Activate
     
    Case "$D$16"
     Range("D17").Activate
    
    Case "$D$17"
     Range("D18").Activate
    
    Case "$D$18"
     Range("D19").Activate
         
   End Select
   strA = ActiveCell.Address
End Sub
Antworten Top
#2
Hallöchen,

Du hast Deine Frage im Beispielbereich gepostet. Ich habe sie mal in den "Fragebereich" Smile verschoben.

Du kannst z.B. eine Msgbox mit den Buttons OK und Abbrechen programmieren und die Aktion entsprechend auswerten.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#3
Bau Dir einen Start- und einen Stop-Code:
Code:
Sub StopIt()
Application.EnableEvents = False
End Sub

Sub ComeOnAndPlay()
Application.EnableEvents = True
End Sub


Folgende Zeilen solltest du in deinem Code ergänzen:
Code:
Application.EnableEvents = False
bzw.
Code:
Application.EnableEvents = True

Grund: Jedes Aktivieren einer Zelle aktiviert den Code.
Hat Dir mein Beitrag geholfen? Dann hilf auch Du - mit einer Spende an Wikipediadie Tafeln oder aktion-deutschland-hilft.de
Antworten Top
#4
Hallo Martin,

probiere es mal mit folgendem Code:

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
  Static strA As String
  Dim varB As Variant, varP As Variant
  varB = Split("U2,F3,C6,C7,C8,N6,N7,S6,S7,D11,D12,D13,D15,D16,D17,D18", ",")
  varP = Application.Match(Target.Address(0, 0), varB, 0)
  If Not IsError(varP) Then
    If varP <= UBound(varB) Then
      strA = varB(varP)
    Else
      strA = ""
    End If
  Else
    If Len(strA) Then
      Range(strA).Activate
    End If
  End If
End Sub

Zum (zwischenzeitlichen) Aussteigen mache einen Doppelklick auf die entsprechende Zelle.

Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste