Microsoft Excel

Herbers Excel/VBA-Archiv

Selection change

Betrifft: Selection change von: Uwe
Geschrieben am: 01.10.2014 14:12:14

Hallo Excelfreunde,
ich habe ein kleines Problem. In einem Tabellenblatt wird in Zelle B3 eine Startzeit eingetragen und in Zelle B4 die Endzeit. In B5 soll dann, wenn beide Zellen gefüllt sind die Differenz zwischen diesen beiden Zeiten eingetragen werden. Mit Selection Change funktioniert das aber irgendwie nicht. Es passiert NICHTS.
Kann mir da evtl. jemand auf die Sprünge helfen, wo der Fehler liegt?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 If Cells(3, 2) Or Cells(4, 2) = "" Then
  Cells(5, 2) = ""
   Else
  Cells(5, 2) = (Cells(4, 2) - Cells(3, 2)) * 24
 End If

End Sub
Vielen Dank im Voraus.

Uwe

  

Betrifft: AW: Selection change von: Hajo_Zi
Geschrieben am: 01.10.2014 14:14:49

Hallo Uwe,

ich hätte auch Change benutzt da Eingabe.

GrußformelHomepage


  

Betrifft: AW: Selection change von: Uwe
Geschrieben am: 01.10.2014 14:18:13

Hallo Hajo,
hab ich auch probiert, aber meinem Code funktioniert auch das nicht. :-(

Gruß Uwe


  

Betrifft: AW: Selection change von: Hajo_Zi
Geschrieben am: 01.10.2014 14:24:57

Hallo Uwe,

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(False, False) = "B3" Then
        If IsNumeric(Target) And IsNumeric(Range("B4")) And Range("B4") <> "" Then
            Range("B5") = Range("B4") - Range("B3")
        End If
    ElseIf Target.Address(False, False) = "B4" Then
        If IsNumeric(Target) And IsNumeric(Range("B5")) And Range("B5") <> "" Then
            Range("B5") = Range("B4") - Range("B3")
        End If
    End If
End Sub
Gruß Hajo


  

Betrifft: AW: Selection change von: Hajo_Zi
Geschrieben am: 01.10.2014 14:36:01

Hallo Uwe,

ich sehe gerade ich habe mich in den Zellen vertan.

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(False, False) = "B3" Or Target.Address(False, False) = "B4" Then
        If IsNumeric(Range("B3")) And Range("B3") <> "" And _
            IsNumeric(Range("B4")) And Range("B4") <> "" Then
            Range("B5") = Range("B4") - Range("B3")
        End If
    End If
End Sub
Gruß Hajo


  

Betrifft: If Cells(3, 2) = "" Or Cells(4, 2) = "" Then... von: {Boris}
Geschrieben am: 01.10.2014 14:16:56

Cells(3, 2) muss auch noch einer Prüfung unterzogen werden.

VG, Boris


  

Betrifft: AW: Selection change von: yummi
Geschrieben am: 01.10.2014 14:21:17

hallo Uwe,

du musst beide zellen abfragen, so wie du es machst fragst du whar or Cells(4,2) = "" und das ist immer wahr, deswegen siehst du nix.


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 If Cells(3, 2) = "" and Cells(4, 2) = "" Then
  Cells(5, 2) = ""
   Else
  Cells(5, 2) = (Cells(4, 2) - Cells(3, 2)) * 24
 End If

End Sub

Gruß
yummi


  

Betrifft: AW: Selection change von: Uwe
Geschrieben am: 01.10.2014 14:27:52

Danke Boris und yummi aber beides funktioniert nicht.
Hab mal einen Entwurf hochgeladen.
https://www.herber.de/bbs/user/92929.xlsm

Gruß Uwe


  

Betrifft: AW: Selection change von: yummi
Geschrieben am: 01.10.2014 14:32:22

Hallo Uwe,

geht doch klick einfach mal ein dein B3 oder B4 rein, sobald du das Feld verlässt passiert was. Wenn du es haben willst, wenn sich der Wert ändert, dann nimm die selben Zeilen in Private Sub Worksheet_Change(ByVal Target As Range)

Gruß
yummi


  

Betrifft: AW: Selection change von: Uwe
Geschrieben am: 01.10.2014 14:38:26

Hallo yummi,
da muss es wohl an meinem Excel oder irgendwelchen Einstellungen liegen. Weil bei mir funktioniert es nicht. Egal wie ich es mache. Habe auch den Code von Hajo probiert, aber leider dasselbe Ergebnis. Es passiert nichts.

Trotzdem danke an alle Helfer und für eure Zeit.

Gruß Uwe


  

Betrifft: AW: Selection change von: yummi
Geschrieben am: 01.10.2014 14:43:05

Hallo Uwe,

es geht nur auf deinem Ini Blatt, auf den anderen Blättern hast du kein Code hinterlegt, für den Fall dass du es auf einem anderen Blatt probiert hast. Ansonsten setz mal einen Breakpoint in deien Funktion und wähle mal B3 an und dann eine andere Zelle. WEnn der breakpoint nicht anschlägt, sind deine Makros gar nicht aktiviert.

Gruß
yummi


  

Betrifft: AW: Selection change von: Uwe
Geschrieben am: 01.10.2014 15:06:23

Habe EXCEL mal komplett geschlossen und neu gestartet. Jetzt funktioniert alles wie gewollt. Keine Ahnung was da los war.
Danke nochmal an alle.

Gruß Uwe


  

Betrifft: Die Mappe ist korrupt... von: {Boris}
Geschrieben am: 01.10.2014 15:05:20

Hi,

Fehler "Wechsel aus dem Entwurfsmodus nicht möglich..." - da gibt`auch ein paar Einträge bei Google zu - u.a.: http://msdn.microsoft.com/de-de/library/office/gg251344(v=office.15).aspx

Fazit: Mappe ist hinüber - transferiere alles in eine neue Mappe.

VG, Boris


 

Beiträge aus den Excel-Beispielen zum Thema "Selection change"