Hallo an Alle,
Ich benötige diese Bedingung für Zeile 14 bis 31
Wie löse ich dass elegant?
If Range("C14") <> "" And Range("A14") = "" Then
MsgBox "Bitte Gefahrgut (j/n) wählen"
End If
Gruss
Martin
Hallöchen,
Du kannst in VBA auch die Funktionen ANZAHL oder ANZAHL2 verwenden.
If Worksheetfunction.Count(Range(...)) = ...
bzw
If Worksheetfunction.CountA(Range(...)) = ...
Moin Nitromethan!
Dass (minus s) könnte man vielleicht besser oder auch eleganter mit einer Formel in einer bedingten Formatierung lösen.
Mich jedenfalls würden (wegzuklickende) MsgBox's nerven.
Gruß Ralf
ChatGPT liefert einfach den Code
Code:
Sub ÜberprüfeBedingungen()
Dim i As Integer
For i = 14 To 31
If Range("C" & i).Value <> "" And Range("A" & i).Value = "" Then
MsgBox "Bitte Gefahrgut (j/n) wählen für Zeile " & i
Exit Sub ' Dies beendet die Schleife, wenn eine Bedingung erfüllt ist
End If
Next i
' Wenn keine Bedingung erfüllt war, fahre fort mit dem restlichen Code hier
End Sub
Wieso ChatGPT da Exit Sub eingebaut hat, weiss ich auch nicht
Siehste @Warkings:
Versuche doch mal, einer KI beizubringen, dass blödsinnige Fragen zunächst als solche untersucht werden.
Falls das so wäre, würde Exit Sub als erste Codezeile - gefolgt von viel Pseudo-Wissen - vorgeschlagen werden.
Die "KI" meint
Zitat:Es ist wichtig zu beachten, dass Künstliche Intelligenz, einschließlich ChatGPT, auf den Informationen basiert, die ihr während des Trainings präsentiert wurden. Das Modell hat nicht die Fähigkeit, "blödsinnige" Fragen im menschlichen Sinne zu erkennen. Es versucht stattdessen, auf jede gestellte Frage oder Anweisung sinnvoll zu antworten, basierend auf den Mustererkennungen, die es während des Trainings gelernt hat.
Wenn eine Frage offensichtlich fehlerhaft oder sinnlos ist, könnte eine angemessene Antwort darin bestehen, nach weiteren Informationen zu fragen, um die Absicht des Benutzers zu klären.