Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1420to1424
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBa - zwei Bedingungen
27.04.2015 12:14:32
Hauser
Halli Hallo ihr Lieben,
ich habe ein Formular, welches über einen Button als PDF gespeichert werden kann.
Bevor sich durch den Button das "Speichern"-Fenster öffnet passieren zwei Abfragen:
  • Wurde der Antragsteller nicht eingetragen öffnet sich ein Userform durch das man den Namen des Antragstellers eintragen kann

  • Wurden nicht alle Pflichtfelder im Eingabebereich ausgefüllt, ist ein Speichern nicht möglich

  • Hier mein Code:
    
    Sub SpeichernPDF()
    If WorksheetFunction.CountA(Sheets("Ergebnis").Range("A58"))  1 Then
    Antragsteller.Show
    'Wurde der Antragsteller eingetragen (in A58)? Wenn nicht, öffnet sich die Userform
    End If
    If WorksheetFunction.CountA(Sheets("Eingabebereich").Range("A9,B9,C9,D9,E9,A14,A18")  7  _
    Then
    MsgBox "Bitte füllen Sie im Eingabereich alle Pflichtfelder aus! Erst dann ist das  _
    speichern möglich.", vbExclamation
    ActiveWorkbook.Sheets("Eingabebereich").Activate
    Else
    ActiveSheet.PageSetup.PrintArea = "$A$1:$F$68,$A$74:$F$119"
    Application.SendKeys "%DPUT"
    End If
    End Sub
    

    Ich weiß, die Lösung mit .SendKeys ist sicherlich nicht sehr elegant, funktioniert aber prima.
    Hier mein Anliegen:
    Die Pflichtfelder, die man fürs Speichern ausgefüllt haben muss sind bisher nur im Eingabereich ("A9,B9,C9,D9,E9,A14,A18").
    Der Nutzer soll aber auch zwingend den Antragsteller ausgefüllt haben, um Speichern zu können. Ich möchte also zwei Bedingungen haben, die fürs speichern nötig sind.
    Das Feld mit dem Antragsteller ist unterm Tabellenheet "Ergebnis", A58.
    Wie kriege ich das hin? Gibt es in VBA ein Äquivalent zur "UND"-Formel?
    Gruß
    Hauser

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

    Betreff
    Datum
    Anwender
    Anzeige
    AW: VBa - zwei Bedingungen
    27.04.2015 12:21:57
    Rudi
    Hallo,
    If WorksheetFunction.CountA(Sheets("Eingabebereich").Range("A9,B9,C9,D9,E9,A14,A18") 7 Or sheets("Ergebnis").Range("A58") = "" Then
    Gruß
    Rudi

    AW: VBa - zwei Bedingungen
    27.04.2015 15:19:13
    Hauser
    Danke Rudi, hat wunderbar funktioniert.
    Man kann also sagen dass Or bei VBA das Pendant zur UND-Funktion ist?
    Gruß
    Hauser

    AW: VBa - zwei Bedingungen
    27.04.2015 23:23:29
    Rudi
    Hallo,
    nö.
    Du willst ja prüfen, ob eine Zelle im Bereich leer ist oder der Anforderer nicht angegeben ist.
    Man kann naürlich auch
    If WorksheetFunction.CountA(Sheets("Eingabebereich").Range("A9,B9,C9,D9,E9,A14,A18") = 7 And sheets("Ergebnis").Range("A58") "" Then
    Ergibt das gleiche.
    Logik!
    Gruß
    Rudi
    Anzeige

    302 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige