Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: OR funktion bei Excel VBA

OR funktion bei Excel VBA
26.05.2008 16:42:00
Köhler
Hallo,
ich würde gerne die beliebte OR/ oder funktion von Excel auch in Vba anwenden, in Zusammenhang mit einem If satz.
In Excel könnte ich ja zum beispiel folgenden befehl in einer zelle ausführen:
if(or(a1=0,a2=0,a3=0),"A","B")
nun möchte ich selbige Funktion in einer schleife an der fett gedruckten position verwenden. ich möchte also nicht nur cells(i, 2) auf einen wert hin überprüfen sondern noch weitere.
For i = 1 To 850
If Worksheets("data €").Cells(i, 2).Value = False Then
Worksheets("data €").Cells(i, 16).Font.ColorIndex = 3
ElseIf Left(Sheets("data €").Cells(i, 1), 35) = Left(Sheets("data €").Cells(i, 16), 35) Then
Worksheets("data €").Cells(i, 17).Copy Destination:= _
Worksheets("data €").Cells(i, 1).End(xlToRight).Offset(0, 1)
'if car in column "a" is same (first 35 letters need to be the same) like column "p"
'then copy column "q" values into the next free column of data range
Else
Worksheets("data €").Cells(i, 16).Font.ColorIndex = 3
'if not highlight in red to attract attention
End If
Next i

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: OR funktion bei Excel VBA
26.05.2008 16:52:00
Holger
Hallo Köhler,
ohne nachzuvollziehen, was du mit deinem Makro machst,
If Bedingung1 Or Bedingung2 Or Bedingung3 then 'usw.
Jede Bedingung besteht aus zu vergleichenden Variablen und einem Vergleichsoperator, z.B.
Worksheets("data €").Cells(i, 2).Value = False
Anstelle von Or kannst du auch andere Logische Operatoren wie And, XOr, usw. verwenden. Im Zweifel setze deine Bedingungen in Klammern, um die Eindeutigkeit zu wahren.
Pass bei der Logik der Abfrage auf, denn die Gesamtabfrage ist True, wenn bereits eine der Bedingungen erfüllt ist.
Gruß
Holger

Anzeige
AW: OR funktion bei Excel VBA
26.05.2008 17:47:00
Köhler
also muss ich nur or zwischen die bedingungen setzen.
super vielen dank für die info

...und schau mal in die VBE-Hilfe - Stichwort...
27.05.2008 01:11:00
Luc:-?
...Operator, lohnt sich...
Gruß Luc :-?
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

OR-Funktion in Excel VBA nutzen


Schritt-für-Schritt-Anleitung

Um die beliebte OR-Funktion von Excel in VBA zu nutzen, kannst du folgende Schritte befolgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor in Excel (Alt + F11).

  2. Füge ein neues Modul hinzu, indem du im Projektfenster mit der rechten Maustaste auf dein Projekt klickst und "Einfügen" > "Modul" auswählst.

  3. Schreibe deinen Code, indem du die OR-Bedingung in einer If-Anweisung verwendest. Hier ist ein einfaches Beispiel:

    For i = 1 To 850
       If Worksheets("data €").Cells(i, 2).Value = False Or _
          Worksheets("data €").Cells(i, 3).Value = False Then
           Worksheets("data €").Cells(i, 16).Font.ColorIndex = 3
       Else
           ' Weitere Bedingungen hier
       End If
    Next i
  4. Achte darauf, dass du die Bedingungen mit dem Or-Operator verbindest. Du kannst auch mehrere Bedingungen mit Or kombinieren.


Häufige Fehler und Lösungen

Einige häufige Fehler, die bei der Verwendung der OR-Funktion in VBA auftreten können, sind:

  • Fehlerhafte Syntax: Achte darauf, dass du den Or-Operator korrekt schreibst. Die Bedingungen müssen durch Or getrennt werden.

  • Verwendung von Klammern: Wenn du mehrere Bedingungen hast, ist es ratsam, diese in Klammern zu setzen, um Missverständnisse in der Logik zu vermeiden. Beispiel:

    If (Bedingung1 Or Bedingung2) And (Bedingung3) Then
  • Falsche Bezugnahme auf Zellen: Stelle sicher, dass du die richtigen Zellbezüge verwendest, z.B. Cells(i, 2).


Alternative Methoden

Falls du keine VBA-Programmierung verwenden möchtest, kannst du auch die Excel Funktion oder in einer Excel-Tabelle nutzen. Hier ist ein Beispiel, wie du die OR-Funktion in einer Excel-Zelle verwenden kannst:

=IF(OR(A1=0, A2=0, A3=0), "A", "B")

Diese Methode eignet sich besonders, wenn du keine Programmierkenntnisse hast oder eine eigene Funktion ohne VBA erstellen möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele für die Verwendung der OR-Funktion in VBA:

  1. Farbliche Markierung von Zellen:

    For i = 1 To 100
       If Worksheets("Daten").Cells(i, 1).Value < 0 Or _
          Worksheets("Daten").Cells(i, 2).Value < 0 Then
           Worksheets("Daten").Cells(i, 1).Interior.Color = RGB(255, 0, 0) ' Rot
       End If
    Next i
  2. Kopieren von Werten basierend auf Bedingungen:

    For i = 1 To 50
       If Worksheets("Daten").Cells(i, 2).Value = "Ja" Or _
          Worksheets("Daten").Cells(i, 3).Value = "Ja" Then
           Worksheets("Daten").Cells(i, 4).Value = "Erledigt"
       End If
    Next i

Tipps für Profis

  • Verwende den XOr-Operator, wenn du sicherstellen möchtest, dass nur eine der Bedingungen wahr ist.

  • Kombiniere die OR-Funktion mit der AND-Funktion, um komplexere Logik zu implementieren.

  • Teste deinen Code regelmäßig, um sicherzustellen, dass alle Bedingungen wie gewünscht funktionieren.


FAQ: Häufige Fragen

1. Wie kann ich mehrere OR-Bedingungen in einer If-Anweisung kombinieren?
Du kannst mehrere Bedingungen einfach mit Or verbinden, z.B.:

If Bedingung1 Or Bedingung2 Or Bedingung3 Then

2. Was passiert, wenn keine der Bedingungen erfüllt ist?
Wenn keine der Bedingungen erfüllt ist, wird der Code im Else-Zweig ausgeführt (falls vorhanden).

3. Gibt es Einschränkungen bei der Anzahl der Bedingungen?
Theoretisch gibt es keine feste Grenze, aber zu viele Bedingungen können den Code unübersichtlich machen. Halte ihn so einfach wie möglich.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige