Collapse column

Autor Thema: Office 2010: Wenn-Abfrage  (Gelesen 1244 mal)

Offline Cobrus

  • Newbie
  • *
  • Beiträge: 10
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Office 2010: Wenn-Abfrage
« am: September 20, 2016, 09:49:08 Vormittag »
Hallo,

ich versuche momentan ein Formblatt zu erstellen und mich dabei in VBA einzuarbeiten. Derzeit stoße ich auf ein Problem mit einer Wenn-Abfrage. Den dazu gehörenden Code habe ich unten angefügt.

Ich versuche einen Wert festzulegen, der in Abhängigkeit vom Inhalt eines Feldes oder einer von zwei Comboboxen definiert ist. Dabei habe ich bereits festgelegt, dass nur eines der drei Ereignisse, also eine Combobox oder das Feld, eintreten kann.
Die Definition der Zielwerte habe ich über eine multiple Wenn-Abfrage bereits erstellt. Allerdings weiß ich noch nicht wie ich es erreiche, dass das Ergebnis auch mit jeder Änderung neu bestimmt wird. Ich vermute, dass eine Kombination aus Schleife und Wenn-Abfrage das Ergebnis liefern könnte, habe aber keine Ahnung welcher Schleifen-Typ geeignet wäre.

Ich hoffe ihr könnt mir weiterhelfen.


Private Sub SW_Change()
 Range(Cells(3, 27), Cells(4, 28)).ClearContents
 If TypIm.Value = "SM" Or TypCh.Value = "CSM" Or Cells(5, 12) = "El" Then
  Cells(3, 27) = 5
 Else
  If TypIm.Value = "SM, IA" Or TypIm.Value = "SM, TL" Or TypIm.Value = "SM, IA, TL" Then
   Cells(3, 27) = 4
  Else
   If TypCh.Value = "CSM, KU" Or TypCh.Value = "CSM, DÄ" Or TypCh.Value = "CSM, KU, DÄ" Or Cells(5, 12) = "Or" Then
    Cells(3, 27) = 3
   Else
    If TypIm.Value = "IA" Or TypIm.Value = "TL" Or TypIm.Value = "IA, TL" Or TypCh.Value = "KU" Or TypCh.Value = "DÄ" Or TypCh.Value = "KU, DÄ" Then
     Cells(3, 27) = 2
    Else
     Cells(3, 27) = 1
    End If
   End If
  End If
 End If
End Sub

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline Cobrus

  • Newbie
  • *
  • Beiträge: 10
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Antw:Office 2010: Wenn-Abfrage
« Antwort #1 am: September 20, 2016, 14:56:16 Nachmittag »
Ich habe das Problem selbst gelöst. Anstatt einer großen Wenn-Schleife, habe ich die einzelnen Bedingungen auf die auslösenden Ereignisse aufgeteilt.

Beispiel:

Private Sub TypIm_Change()
 If TypIm.Enabled = True and TypIm = "SM" Then
 Cells(3, 27).Value = 5
 Else
  If TypIm.Enabled = True and TypIm = "SM, IA" Or TypIm.Enabled = True and TypIm = "SM, TL" Or TypIm.Enabled = True and TypIm = "SM, IA, TL" Then
 Cells(3, 27).Value = 4
 Else
  Cells(3, 27).Value = 2
  EndIF
 EndIF
EndSub

Das erfolgt analog für die zweite Combobox und das Feld.

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.