1.9k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo Allseits,

Es geht um die wöchentliche Verplanung von Mitarbeitern für Einsätze in Objekten (Baustellen) unter gleichzeitigem Vergleich mit den vertraglich vereinbarten Zeiten pro Tag.

Das eigentliche Problem ist, dass es mir nicht gelungen ist, wenn in einem Zellbereich z.B. B16 bis H18 auf Grund einer falschen Eingabe in irgendeiner Zelle „FEHLER“ steht auch zusätzlich ein deutlicher Hinweis bereits im Zuge der Eingabe (oder auch permanent) eingeblendet wird.

Für Tipps, Hinweise, Links oder Vorschläge auch Allgemein bedanke ich mich im Voraus

Herzliche Grüße

Paul1

P.S.
Wenn erforderlich, ein provisorisches Grundgerüst zur Ansicht wäre vorhanden.

Excel 2003

5 Antworten

0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

dein Problem ist aus meiner Sicht, wenn überhaupt, nur per Makro zu lösen.

Du müsstest nach jeder Eingabe eine abfrage starten, die prüft ob deine Eingabe fehlerfrei ist.

Gruß

Helmut
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Paul,

nachfolgender Code prüft nach der Eingabe, ob eine Berechnung einen Fehler enthält. Tritt ein Fehler auf, erscheint eine entsprechende Fehlermeldung

Kopiere das Makro in das VBA-Projekt des Tabellenblatts, in dem er wirken soll.Teste den Code aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lngRow As Long
Dim intColumn As Integer
Dim rngCells As Range

intColumn = ActiveSheet.Cells.Find("*", searchdirection:=xlPrevious).Column
lngRow = ActiveSheet.Cells.Find("*", searchdirection:=xlPrevious).Row

Set rngCells = Range(Cells(1, 1), Cells(lngRow, intColumn))

On Error GoTo Weiter
MsgBox "Durch die letzte Eingabe enthalten " _
& rngCells.Cells.SpecialCells(xlCellTypeFormulas, 16).Count _
& " Formel(n) fehlerhafte Bereechnungen. Bitte Eingabe prüfen!", vbCritical, "Fehler..."
Exit Sub
Weiter:
End Sub

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
Hallo an Alle!

vorerst besten Dank für die prompten Antworten!

Hallo Oliver,

Deinen mir übermittelten Code habe ich kopiert und eingefügt, jedoch scheint unter Makros nichts auf um ihn ausführen zu können.
Habe ich da was falsch gemacht?
Makros einfügen habe ich schon öfters mit Erfolg durchgeführt, aber ansonsten habe ich davon keine Ahnung.

Vielleicht wäre es von Vorteil die Datei zu sehen:

Verplanung-Konzept


schöne Grüße


Paul1
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Paul,

mein Code hat Fehler in Formeln wie "#WERT!" oder "#BEZUG!" usw. ausgewertet und dann entsprechend reagiert. Bei Dir geht es ja um das Wort "FEHLER", das hatte ich falsch interpretiert.

Nachfolgender Code sollte aber nun funktionieren, da dieser das Wort "FEHLER" auswertet.

Kopiere das Makro in das VBA-Projekt des Tabellenblatts, in dem er wirken soll.
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngCells As Range

For Each rngCells In Range("B16:H18")
If LCase(rngCells.Value) = LCase("Fehler") Then
MsgBox "Durch die letzte Eingabe ist ein Fehler aufgetreten. Bitte Eingabe prüfen!" _
, vbCritical, "Fehler..."
Exit For
End If
Next
End Sub

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
Hallo Oliver,

Deine Lösung entspricht genau meinen Vorstellungen - super !!!

Vielen herzlichen Dank und noch einen schönen Tag

mit besten Grüßen

Paul 1
...