Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

If - mit zwei Anweisungen

Forumthread: If - mit zwei Anweisungen

If - mit zwei Anweisungen
21.05.2003 14:07:30
Hakan
Hallo,

kann mir jemand erklären, wie ich in VBA zwei Anweisungen ausführen lassen kann!
z.B.: If Artikel = " " then Exit Sub ???and??? Tabelle(...).cells(...) = 0

Grüße
Hakan





Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: If - mit zwei Anweisungen
21.05.2003 14:10:27
Yvonne

Hallo Hakan,

so geht's:

If Artikel = "" Then
Tabelle(...).cells(...) = 0
Exit Sub
End if

Gruß, Yvonne

Re: If - mit zwei Anweisungen
21.05.2003 14:10:33
andreas e

hallo hakan,
im groben stimmt die syntax doch schon !
if range("A1")="" and sheets("Tabelle1").cells(1,3).value = 0 then
.... dein code

gruß
andreas e

Anzeige
Re: If - mit zwei Anweisungen
21.05.2003 14:14:31
Tykopulus

Du must doch einfach nur das was dann alles gemacht werden soll untereinander schreiben ... wenn ... das ... erfüllt ist kann soviel passieren wie du willst (oder was meinst du)

Beispiel

Dim Merkvariable as Integer

Cells(1, 1).select
If activecell.value = "XYZ" then
Cells(1 ,2).select
Merkvariable = Activecell.value
Merkvariable = Merkvariable + 4
Cells(1, 3).select
Activecell.value = Merkvariable
end if

Hier tue ich mit einer If Anweisung sogar 3 Dinge ...

1) Prüfen ob A1 XYZ ist
2) Wenn ja den Wert aus B1 eine Variable eintragen und + 4 Addieren
3) Das in Zelle C1 eintragen

Meinst du das so oder verstehe ich dich nur falsch :))

Anzeige
Das war anderst gemeint....
21.05.2003 14:24:30
Hakan

Ihr Lieben,

ihr habt mich falsch verstanden oder ich habe es falsch erklärt.
Also wenn Artikel = " " dann soll, dass Programm beendet werden und wenn das Programm beendet wird, dann soll Range(A1)= 0 werden.



Re: Das war anderst gemeint....
21.05.2003 14:30:16
Yvonne

Hallo Hakan,

das müsste damit aber doch funktionieren, oder?

If Artikel = " " Then
Tabelle(...).cells(...) = 0
Exit Sub
End if

Du setzt den Wert in der Zelle erst auf 0 und verlässt dann das Makro. Und beides geschieht nur, wenn Artikel = " " ist.

Gruß, Yvonne

Anzeige
Re: Das war anderst gemeint....
21.05.2003 14:39:50
Hakan

Hmmm,

das hat wieder nicht geklappt, aber kannst Dir mal den Code anschauen?! Aber aufjedenfall, Danke schön !

Sub NameEintragen()

MsgBox "Es müssen alle Eingaben getätigt werden"
'Meldung

Name = InputBox("Geben Sie bitte Ihren Name ein", "Bearbeiter")
If Name = "" Then Exit Sub
Tabelle1.Cells(5, 5) = Name

Artikel = InputBox("Geben Sie bitte die Artikel bezeichnung ein", _
"Artikelbezeichnung", "Benutzer")
If Artikel = "" Then Tabelle1.Cells(5,5)= 0 Exit Sub end if
Tabelle1.Cells(6, 5) = Artikel
End Sub


Anzeige
Re: Das war anderst gemeint....
21.05.2003 14:45:53
Yvonne

Hallo Hakan,

wenn du nach If mehrere Anweisungen ausführen lassen möchtest, musst du nach Then und nach jeder Anweisung Enter eingeben (und mit End If abschließen).

So sollte es funktionieren:


Sub NameEintragen()

MsgBox "Es müssen alle Eingaben getätigt werden"
'Meldung

Name = InputBox("Geben Sie bitte Ihren Name ein", "Bearbeiter")
If Name = "" Then Exit Sub
Tabelle1.Cells(5, 5) = Name

Artikel = InputBox("Geben Sie bitte die Artikel bezeichnung ein", _
"Artikelbezeichnung", "Benutzer")
If Artikel = "" Then
Tabelle1.Cells(5, 5) = 0
Exit Sub
End If
Tabelle1.Cells(6, 5) = Artikel
End Sub

Gruß, Yvonne

Anzeige
Re: Das war anderst gemeint....
21.05.2003 14:51:42
Hakan

Vielen Dank,

es tut jetzt wie es sollte!

Gruß Hakan


;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Excel VBA: If-Anweisungen mit mehreren Bedingungen nutzen


Schritt-für-Schritt-Anleitung

Um in Excel VBA mehrere Anweisungen innerhalb einer If-Anweisung auszuführen, kannst du die folgende Struktur verwenden:

If Bedingung1 Then
    ' Anweisung 1
    ' Anweisung 2
    ' ...
End If

Ein Beispiel, wie du zwei Anweisungen mit einer If-Bedingung kombinieren kannst:

If Artikel = "" Then
    Tabelle1.Cells(5, 5) = 0
    Exit Sub
End If

Hier wird, falls die Bedingung Artikel = "" erfüllt ist, zunächst der Wert in der Zelle 5,5 auf 0 gesetzt und anschließend das Makro beendet.


Häufige Fehler und Lösungen

Ein häufiger Fehler ist, dass der Code nicht korrekt strukturiert ist. Achte darauf, dass jede Anweisung untereinander geschrieben wird und das End If am Ende der If-Anweisung steht.

Beispiel für einen häufigen Fehler:

If Artikel = "" Then Tabelle1.Cells(5, 5) = 0 Exit Sub End If

Korrektur:

If Artikel = "" Then
    Tabelle1.Cells(5, 5) = 0
    Exit Sub
End If

Alternative Methoden

Du kannst auch die Select Case-Anweisung verwenden, um mehrere Bedingungen zu prüfen. Hier ein einfaches Beispiel:

Select Case Artikel
    Case "A"
        Tabelle1.Cells(5, 5) = 1
    Case "B"
        Tabelle1.Cells(5, 5) = 2
    Case Else
        Tabelle1.Cells(5, 5) = 0
End Select

Diese Methode kann besonders nützlich sein, wenn du viele Bedingungen hast.


Praktische Beispiele

Hier ist ein praktisches Beispiel, das zeigt, wie du mehrere If-Bedingungen in einer Subroutine verwenden kannst:

Sub NameEintragen()
    MsgBox "Es müssen alle Eingaben getätigt werden"
    Name = InputBox("Geben Sie bitte Ihren Namen ein", "Bearbeiter")
    If Name = "" Then Exit Sub
    Tabelle1.Cells(5, 5) = Name

    Artikel = InputBox("Geben Sie bitte die Artikelbezeichnung ein", "Artikelbezeichnung", "Benutzer")
    If Artikel = "" Then
        Tabelle1.Cells(5, 5) = 0
        Exit Sub
    End If
    Tabelle1.Cells(6, 5) = Artikel
End Sub

In diesem Beispiel wird zuerst überprüft, ob der Name und der Artikel eingegeben wurden. Falls nicht, wird die Subroutine vorzeitig beendet.


Tipps für Profis

  • Verwende And und Or, um mehrere Bedingungen in einer If-Anweisung zu kombinieren. Beispiel:
If Artikel = "" Or Menge < 1 Then
    MsgBox "Artikel muss angegeben werden."
    Exit Sub
End If
  • Nutze Debug.Print, um bei der Fehlersuche den Wert von Variablen auszugeben.

  • Plane deinen Code, bevor du schreibst. Eine klare Struktur hilft, komplexe Bedingungen zu verwalten.


FAQ: Häufige Fragen

1. Wie kann ich mehrere If-Bedingungen kombinieren?
Du kannst mehrere Bedingungen mit And oder Or in einer If-Anweisung kombinieren. Beispiel: If Artikel = "" And Menge > 0 Then.

2. Was ist der Unterschied zwischen And und Or?
And erfordert, dass alle Bedingungen wahr sind, während Or nur eine wahre Bedingung benötigt, um die gesamte If-Anweisung als wahr zu bewerten.

3. Wie kann ich eine If-Anweisung verschachteln?
Du kannst eine If-Anweisung innerhalb einer anderen If-Anweisung platzieren. Achte darauf, die Struktur klar zu gestalten, um die Lesbarkeit zu verbessern.

4. Wie gehe ich mit Fehlern in meinem VBA-Code um?
Nutze die Funktion On Error, um Fehler zu behandeln und das Programm nicht abrupt zu beenden. Beispiel: On Error Resume Next.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige