Hilfe bei 2x Change im Sheet
#1
Hallo zusammen :),

ich versuche 2x Change in einem Tabellenblatt einzubinden, dies geht leider nicht, dass sagte mir Dr.Google auch, aber ich weiß nicht wie ich dies am besten umschreiben soll, dass es zu einem Change wird.

1. Change

Private Sub Worksheet_Change(ByVal Target As Range)
  If Range("L12").Value = "AP MA manuell" Then
  ActiveSheet.CommandButton2.Visible = True
  ifElse
  ActiveSheet.CommandButton2.Visible = False
  End If
  End Sub

2. Change

Private Sub Worksheet_Change2(ByVal Target As Range)
If Range("N10").Value = "ja" Then
    UserForm3.Show vbModal
  Else
    Range("D6").Value = "0"
    Range("D8").Value = "0"
    Range("D10").Value = "0"
    Range("D12").Value = "0"
    Range("D14").Value = "0"
    Range("D16").Value = "0"
    Range("D18").Value = "0"
  End If

End Sub

Vielen Dank im voraus. :)
Top
#2
Hi,

ich würde es mal so versuchen:


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Range("L12").Value = "AP MA manuell" Then
  ActiveSheet.CommandButton2.Visible = True
  ifElse
  ActiveSheet.CommandButton2.Visible = False
  End If
 
If Range("N10").Value = "ja" Then
    UserForm3.Show vbModal
  Else
    Range("D6").Value = "0"
    Range("D8").Value = "0"
    Range("D10").Value = "0"
    Range("D12").Value = "0"
    Range("D14").Value = "0"
    Range("D16").Value = "0"
    Range("D18").Value = "0"
  End If

End Sub
Mit freundlichen Grüßen  :)
Michael
Top
#3
Auch Hallo,

müsste es nicht ElseIf heißen statt ifElse?
Gruß Stefan
Win 10 / Office 2016
Top
#4
Vielen Dank, das funktioniert leider auch nicht :(
Top
#5
doppelt
Top
#6
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("L12").Value = "AP MA manuell" _
   Then ActiveSheet.CommandButton2.Visible = True _
   Else ActiveSheet.CommandButton2.Visible = False
If Range("N10").Value = "ja" Then
   UserForm3.Show vbModal
Else
   Range("D6").Value = "0"
   Range("D8").Value = "0"
   Range("D10").Value = "0"
   Range("D12").Value = "0"
   Range("D14").Value = "0"
   Range("D16").Value = "0"
   Range("D18").Value = "0"
End If
End Sub

ist aber blöd, weil mangels Target bei jedem Wechsel überall das Change durchläuft.
Top
#7
Erstmal vielen Dank :) egal wie ich es mache nichts läuft flüssig oder es schmiert ab, habt ihr sonst noch vielleicht ein Paar Alternativvorschläge ?
Top
#8
Hallo,

ungetestet

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("L12").Value = "AP MA manuell" _
   Then ActiveSheet.CommandButton2.Visible = True _
   Else ActiveSheet.CommandButton2.Visible = False
If Range("N10").Value = "ja" Then
   UserForm3.Show vbModal
Else
   Application.EnableEvents = False
   Range("D6").Value = "0"
   Range("D8").Value = "0"
   Range("D10").Value = "0"
   Range("D12").Value = "0"
   Range("D14").Value = "0"
   Range("D16").Value = "0"
   Range("D18").Value = "0"
   Application.EnableEvents = True
End If
End Sub
Gruß Stefan
Win 10 / Office 2016
Top
#9
Hallo,

normalerweise nutzt man das Change Ereignis in Abhängigkeit einer Änderung einer Zelle oder eines Bereiches.
Deshalb verstehe ich es so, wenn die Zelle L12 geändert wurde, dann das Ein- oder Ausblenden des Buttons abarbeiten.
Wenn Zelle N10 geändert wurde dann den Teil mit der Userform und den Zellen D6:D18 abarbeiten.

Das würde dann im Code so aussehen:


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Address(0, 0) = "L12" Then
   If Range("L12").Value = "AP MA manuell" Then
     ActiveSheet.CommandButton2.Visible = True
    Else
     ActiveSheet.CommandButton2.Visible = False
   End If
 ElseIf Target.Address(0, 0) = "N10" Then
   If Range("N10").Value = "ja" Then
      UserForm1.Show vbModal
   Else
      Application.EnableEvents = False
      Range("D6").Value = "0"
      Range("D8").Value = "0"
      Range("D10").Value = "0"
      Range("D12").Value = "0"
      Range("D14").Value = "0"
      Range("D16").Value = "0"
      Range("D18").Value = "0"
      Application.EnableEvents = True
   End If
 End If
End Sub
Gruß Atilla
[-] Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:
  • hbboy15
Top
#10
Vielen Dank an alle, klappt super :)
Top


Gehe zu:


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