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

If Befehl über mehrere Zeilen

Forumthread: If Befehl über mehrere Zeilen

If Befehl über mehrere Zeilen
Marc
Hallo,
ich möchte gerne einen IF Befehl über mehrere Zeilen machen, in denen dann auch wieder IF Befehle verwandt werden. Nun scheint das Programm (woher auch) nicht zu verstehen, wo welcher End IF für welches IF gilt.
Muss ich da was klammern, wenn ja wie?
Danke für den Tipp
Marc
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: If Befehl über mehrere Zeilen
23.02.2012 15:58:55
Bertram
Hallo Marc,
ein Beispiel wär hilfreich, aber Klammern hört sich schon mal gut an:-)
Gruß
Bertram
AW: If Befehl über mehrere Zeilen
23.02.2012 16:06:54
Marc
Hallo,
habe nun hier den Code mal reingeschrieben. Der Code zwischen den fetten Anweisungen soll nur ausgeführt werden, wenn msg2
Private Sub CommandButton1_Click()
msg2 = (ActiveSheet.UsedRange.Rows.Count)
IF msg2 
Range("AS2").Select
ActiveCell.FormulaR1C1 = "Test"
Selection.AutoFill Destination:=Range("AS2:AS" & msg2), Type:=xlFillDefault
Range("L2").Select
ActiveCell.FormulaR1C1 = "0"
Selection.AutoFill Destination:=Range("L2:L" & msg2), Type:=xlFillDefault
Cells.Select
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Columns("AF:AF").Select
Application.CutCopyMode = False
Selection.NumberFormat = "dd/mm/yy;@"
Columns("BW:CC").Select
Selection.Delete Shift:=xlToLeft
ActiveWorkbook.Save
end if    
UserForm1.Hide
End Sub

Anzeige
AW: If Befehl über mehrere Zeilen
23.02.2012 16:16:55
hary
Hallo Marc
meinst Du wirklich wenn ActiveSheet.UsedRange.Rows.Count kleiner 2.
Wenn 3 gefuellte Zellen wird der Code nicht ausgefuehrt.
sollte doch so heissen

IF msg2 > 2 then

oder?
gruss hary
AW: If Befehl über mehrere Zeilen
23.02.2012 16:26:08
Marc
hast recht!!
und zack schon geht es.... sorry....
Anzeige
AW: If Befehl über mehrere Zeilen
23.02.2012 16:18:36
Bertram
Hallo Marc,
mal abfesehen davon, dass es keinen Sinn macht mit <2 (nsg2 kann ja dann nur 1 sein) sollte das doch funzen. Wo soll denn nun das zweite If...Then hin?
Gruß
Bertram
;
Anzeige
Anzeige

Infobox / Tutorial

IF-Befehl in Excel über mehrere Zeilen


Schritt-für-Schritt-Anleitung

Um einen IF-Befehl in Excel über mehrere Zeilen zu nutzen, kannst du den folgenden Schritten folgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor:

    • Drücke ALT + F11, um den Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke im Menü auf Einfügen und wähle Modul.
  3. Schreibe den Code:

    • Verwende den folgenden Beispielcode, um deine IF-Befehle zu strukturieren:
      Private Sub CommandButton1_Click()
      msg2 = ActiveSheet.UsedRange.Rows.Count
      If msg2 > 2 Then
         Range("AS2").Select
         ActiveCell.FormulaR1C1 = "Test"
         Selection.AutoFill Destination:=Range("AS2:AS" & msg2), Type:=xlFillDefault
         Range("L2").Select
         ActiveCell.FormulaR1C1 = "0"
         Selection.AutoFill Destination:=Range("L2:L" & msg2), Type:=xlFillDefault
         Cells.Select
         Selection.Copy
         Sheets.Add After:=Sheets(Sheets.Count)
         Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
         Columns("AF:AF").Select
         Application.CutCopyMode = False
         Selection.NumberFormat = "dd/mm/yy;@"
         Columns("BW:CC").Select
         Selection.Delete Shift:=xlToLeft
         ActiveWorkbook.Save
      End If
      UserForm1.Hide
      End Sub
  4. Teste den Code:

    • Klicke auf den CommandButton in deinem UserForm, um den Code auszuführen.

Häufige Fehler und Lösungen

  • Fehler: End If nicht richtig gesetzt:

    • Stelle sicher, dass jedes If ein passendes End If hat. Wenn du mehrere IF-Befehle hast, achte darauf, dass diese korrekt verschachtelt sind.
  • Fehler: Bedingung nicht erfüllt:

    • Überprüfe die Bedingung in deinem IF-Befehl. Zum Beispiel: If msg2 > 2 Then, um sicherzustellen, dass der Code ausgeführt wird, wenn mehr als zwei Zeilen vorhanden sind.

Alternative Methoden

Wenn du keine VBA-Programmierung verwenden möchtest, kannst du IF-Befehle auch direkt in Excel-Formeln verwenden. Hier ist ein einfaches Beispiel für eine Excel-Formel:

=IF(A1 > 10, "Größer als 10", "Kleiner oder gleich 10")

Diese Formel gibt "Größer als 10" zurück, wenn der Wert in Zelle A1 größer als 10 ist.


Praktische Beispiele

Hier sind einige praktische Anwendungen des IF-Befehls in VBA:

  • Datenvalidierung: Du kannst den IF-Befehl verwenden, um sicherzustellen, dass Benutzereingaben in einem bestimmten Bereich liegen, bevor die Verarbeitung fortgesetzt wird.

  • Bedingte Formatierung: Zusammen mit VBA kann der IF-Befehl verwendet werden, um die Formatierung von Zellen basierend auf bestimmten Bedingungen dynamisch zu ändern.


Tipps für Profis

  • Nutzung von Select vermeiden: Wenn möglich, vermeide die Verwendung von Select und Activate. Dies macht deinen Code effizienter und weniger fehleranfällig. Zum Beispiel:

    Range("AS2").FormulaR1C1 = "Test"
  • Klammern verwenden: Wenn du mehrere Bedingungen hast, ist es ratsam, Klammern zu verwenden, um die Lesbarkeit zu verbessern und logische Fehler zu vermeiden.


FAQ: Häufige Fragen

1. Wie viele IF-Befehle kann ich in VBA verwenden? Du kannst theoretisch eine unbegrenzte Anzahl von IF-Befehlen verwenden, aber es ist ratsam, den Code übersichtlich zu halten.

2. Was mache ich, wenn mein IF-Befehl nicht funktioniert? Überprüfe die Bedingungen und stelle sicher, dass die Syntax korrekt ist. Achte besonders auf Klammern und die Verwendung von Then.

3. Kann ich IF-Befehle in Formeln und in VBA kombinieren? Ja, du kannst sowohl Excel-Formeln als auch VBA verwenden, um IF-Befehle zu implementieren, je nach Bedarf.

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